Jump to content

[1.7.10] Rendering enormous entities


PrototypeTheta

Recommended Posts

So I'm trying to render a ludicrously big entity. Approximately 350 blocks long.

 

I am pretty much at a loss on how to increase it's render distance high enough for practical use. I've tried setting the tracking range to 400 and I've increased the renderDistanceWeight. It's pretty apparent that I'm running into some other limitation (or I'm missing something very obvious) but I'm rather new to this and I'm clueless as to what it is.

 

 

Now the obvious solution would be to scale down the size of the model. But that's no fun now is it?

Link to comment
Share on other sites

Your entity is larger than the entire volume of world being loaded.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

Sorry, made a mistake, it's 280 blocks, not 350, I'm thinking of the wrong scale. Still completely ridiculous but at least it fits now with some degree (albeit very slight) of reason

 

That's still 17 chunks long.  The loaded size of the world is typically only 15 or so.

Even at the maximum render distance (21 chunks) your entity is still 83% of that full diameter.  There is no way in HELL you are going to make this work.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

You could say that entities are capped by two things:

 

1. If they are loaded to world.

2. If they are being tracked.

 

1st one won't allow you to see entities beyond chunks loaded by server (and sent to client) simply because those chunks and their entities are not there (not loaded).

So yeah - loading is something close to 15 chunks (about 256 blocks I think).

 

2nd is a tracking cap, which is directly related to chunks being loaded - entity tracking is capped at 256 blocks (or something like that).

 

Now, one could ask if it would be possible to beat it?

You could load chunks manually and send them to clients manually. Solving 1st problem probably wouldn't require ASM (I am assuming that since in vanilla itself there is a situation, often when you have lag, when you move you don't load new chunks, but old stay far away - logically you could simply load/send ones far away).

 

The real problem is with 2nd since it is capped internally - you can track it back from EntityTracker#addEntityToTracker to stuff like #setViewDistance and other distance-related stuff which is directly capped by 15. So yeah - it will require ASM to override shit-ton of stuff - almost impossible to do that. :)

1.7.10 is no longer supported by forge, you are on your own.

Link to comment
Share on other sites

Perhaps the best option would be to cut it to half the original size (which was oversized anyway). 175 blocks is still big but we've gotten stuff in this size range to work fine in the past. An extra 50 blocks or so on the render distance (which is apparently 200 right now but I'm not sure I believe that) would make it mostly bearable. It also looks like I'd have to make the texture at half scale anyway, don't fancy using 8k textures.

 

I think for now I'll take the cheap (sensible) option, hopefully it'll still function fine at a reduced size. I can only really handle banging my head against one "impossible" task at a time.

 

Might come back to this problem later though.

Link to comment
Share on other sites

You could split the entity into multiple smaller entities.

 

That sounds like it could work, the model is already structured so it can be easily cut into segments. Might get a bit complicated dealing with the collision but it's certainly possible, just a bit too big of a job to be done now.

 

Cutting it into two, with one entity at either end should do it right?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • C:\Minecraft Server>java -Xmx4096M -Xms1024M -jar server.jar nogui Starting net.minecraft.server.Main ERROR StatusConsoleListener Unable to delete file C:\Minecraft Server\logs\latest.log: java.nio.file.FileSystemException C:\Minecraft Server\logs\latest.log: The process cannot access the file because it is being used by another process ^CTerminate batch job (Y/N)?
    • I am creating a 1.18.2 server with forge and when I put any mod on it I get something about REM and that I need MODS.TML, what would be the solution?
    • Oke i tried to download a different mod and try that out on my server and i get the same error. Now i know for a fact that my port forwarding and server is working properly, because i can join them without adding any mods into the server file, but then i dont know what i am doing wrong 
    • Salutation to you ladies and gentlemen, i must confidently say a very big thanks to Fastfundrecovery8 AT GMAIL COM for their tremendous action taken over my case immediately brought to their table, i saw how the whole process was going, and i wisperred to myself and said indeed i am previlledge to know such a legitimate recovery company who is very understable and do not stress their client over recovery software tools, Fastfunds Recovery are good in keeping to time, punctuality, I was scammed last year December 18, i realized that my long investment which i inteded to withdraw has long been a scam, got so frustrated, hired 4 recovery hackers which ended up taking money from me and i couldn't contact them anymore, i went through emotional pains and betrayer, wasn't easy for me at that moment, am very greatful for FastFunds Recovery, who was referred to me by a civil engineer who i was opportuned to share part of my story with and he was like i have a cyber friend do reach and say i'm from Pato's, that's how i got in touch with fastfundsrecovery8(@)gmail(.)com, do inform FastFunds recovery for any cyber issues. Fastfundsrecovery8 AT GMAIL WILL ALWAYS HELP GET BACK YOUR FUNDS.
    • Hello everyone i have made a server with forge and have added pixelmon into the server. But for some reason i keep getting "Internal Exception: io.netty.handles.codec.DecoderException: Not enough bytes in buffer, expected 105, byt got 48". I tried upping the ram of the server to 2GB but it didnt solve anything. I have 16 GB of ram on my pc (where i host the server), but i cant seem to get it to work. Pixelmon does work when i try to go into singleplayer, but for some reason just doesnt work online   Edit: server logs sais nothing aswell [18:55:49] [ServerMain/INFO]: Environment: Environment[accountsHost=https://api.mojang.com, sessionHost=https://sessionserver.mojang.com, servicesHost=https://api.minecraftservices.com, name=PROD] [18:55:50] [ServerMain/INFO]: Loaded 7 recipes [18:55:51] [ServerMain/INFO]: Loaded 1271 advancements [18:55:51] [Server thread/INFO]: Starting minecraft server version 1.20.2 [18:55:51] [Server thread/INFO]: Loading properties [18:55:51] [Server thread/INFO]: Default game type: SURVIVAL [18:55:51] [Server thread/INFO]: Generating keypair [18:55:51] [Server thread/INFO]: Starting Minecraft server on *:xxxx [18:55:51] [Server thread/INFO]: Using default channel type [18:55:51] [Server thread/INFO]: Preparing level "world" [18:55:52] [Server thread/INFO]: Preparing start region for dimension minecraft:overworld [18:55:53] [Worker-Main-8/INFO]: Preparing spawn area: 0% [18:55:53] [Worker-Main-8/INFO]: Preparing spawn area: 0% [18:55:53] [Worker-Main-8/INFO]: Preparing spawn area: 0% [18:55:53] [Worker-Main-12/INFO]: Preparing spawn area: 0% [18:55:54] [Worker-Main-11/INFO]: Preparing spawn area: 31% [18:55:54] [Server thread/INFO]: Time elapsed: 2344 ms [18:55:54] [Server thread/INFO]: Done (2.865s)! For help, type "help" [18:55:56] [User Authenticator #1/INFO]: UUID of player kemal007023 is 9a2a1dff-fa06-4e29-b57d-b1e6afb2db87 [18:55:56] [Server thread/INFO]: kemal007023[/xxxx] logged in with entity id 271 at (9.497695306619189, 68.0, 10.973182362716573) [18:55:56] [Server thread/INFO]: kemal007023 joined the game [18:55:56] [Server thread/INFO]: kemal007023 lost connection: Disconnected [18:55:56] [Server thread/INFO]: kemal007023 left the game [18:56:00] [User Authenticator #2/INFO]: UUID of player kemal007023 is 9a2a1dff-fa06-4e29-b57d-b1e6afb2db87 [18:56:00] [Server thread/INFO]: kemal007023[xxxx] logged in with entity id 272 at (9.497695306619189, 68.0, 10.973182362716573) [18:56:00] [Server thread/INFO]: kemal007023 joined the game [18:56:00] [Server thread/INFO]: kemal007023 lost connection: Disconnected [18:56:00] [Server thread/INFO]: kemal007023 left the game  
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.