Jump to content

Help with smoothing terrain MC v.1.11.2


OMG Crackers

Recommended Posts

I know there is a mod out there called no cubs but that mod is for 1.7.10 and the mod creator doesn't seem to care about updating it till its stable. I want to just add a slant on all terrain blocks and make the water blocks mold to those blocks. how would i even begin such a feet. I know how to code in java. I have already setup forge .mdk and i had a peak at no cubs src code alongside 10+ forums about rendering blocks and classes. I just not sure how to begin.

Edited by OMG Crackers
Link to comment
Share on other sites

1) It's "cubes." with an E. This is a cube, this is a cub.

2) Good fucking luck. The whole rendering system changed from 1.7 to 1.10, you as a new modder have no chance at updating it.

3) " doesn't seem to care about updating it till its stable.." Uh. 1.11 is very stable. So stable we've started working on 1.12...

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

Draco18s love how you responded. Well yes cubes missed that "E" (sorry) and new modder? I maybe a new modder but i know how to script so I'm sure it couldn't be much harder. I found out I need to go into like TileEntitySpecialRenderer (TESR) and/or Block States. I'm still reading into it in the documents. I saw the (TESR) isnt the best option since it would modify the blocks every frame and all i need to do is change the vertices right after the generation of the world and only again when a block updates. Also i meant his mod was stable.

Link to comment
Share on other sites

The problem is that block models in 1.10 and newer have been precalculated and baked. The rendering system is not as flexible as it was in 1.7

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

It sure is possible. But trust me, it will be a nightmare. Even more so if you want to stay compatible with other mods. I would start with something else first and get a feel for forge before you tackle such a task.

The only way I could come up with that doesn't require you to rewrite the rendering system is to replace vanilla dirt with your custom block and switch between it's blockstates (and models) depending on the surrounding blocks.

Here could be your advertisement!

Link to comment
Share on other sites

I have created dynamic flowing terrain blocks for a volcano that is part of mod I've been working on since 1.7.  The code is currently on 1.12.

 

 

 

Each terrain block has approximately 2^55 possible shapes, but many are redundant or not used.  Blocks are mapped to IBakedModel delegates of a centralized model dispatcher that dynamically generates, bakes and caches models on demand.  All dynamic model generation/dispatch is multi-threaded.  Collision boxes are also generated on demand and cached.

 

Terrain blocks are NOT tile entities.  Shape is determined dynamically from neighbors.  The exception is when the player breaks a block.  When that happens, the shape of all nearby blocks is frozen and persisted in a tile entity so that mining basalt blocks doesn't cause the terrain to change shape.  

 

The volcano itself involves a hybrid celluar-automation/eulerian grid-based fluid simulation that runs on a separate thread pool between server ticks.  All world access/udpates occur during server tick but are buffered and bundled to minimize the number of chunk updates / rebuilds. The simulation automatically loads chunks as needed.

 

The volcanic lava behaves in a semi-realistic fashion, pooling and filling basins, overflowing, running into tunnels. It can even flow upwards through U-shaped channels to equalize surface levels globally. Viscosity and surface tension are also emulated, albeit very crudely. Cooling of lava to basalt happens when flow velocity slows. The volcano pauses lava ejection when CPU utilization of the simulation gets above a configured percentage. 

 

No ASM.  No access transformers. It has been every bit the pain in the ass you would expect.

 

At this time, the terrain blocks are limited to volcanic lava and basalt.  It would be straightforward to implement world gen that replaces surface blocks with dynamic flowing versions.  However, it would not be well-behaved with trees, grass, flowers, etc.  And currently it does not handle MC fluids well.  To do it right would require multi-part support and multi-part fluids. 

 

I would like to add broader terrain features at some point, but right now I'm focused on other aspects of the mod. 

 

I'm expecting to have the first alpha release for this mod on Curse within several weeks.

 

Source code is here: https://github.com/grondag/Hard-Science

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



×
×
  • Create New...

Important Information

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