Jump to content

[1.12.2] Replace world renderer


Cadiboo

Recommended Posts

On 9/22/2018 at 1:23 AM, Animefan8888 said:

world renderers(BufferBuilder instances) are stored in an instance of RegionRenderCacheBuilder

Do you know anywhere that has concepts or code that I need to draw with DefaultVertexFormats.BLOCK with the BufferBuilder? Because I simply cannot find anywhere in vanilla code (Stepped through it with the debugger - everything seems to get handed to Forge's pipeline which appears to somehow not use the BufferBuilder).

Edit - Forge's pipeline appears to add the vertexes to BufferBuilder directly with addVertexData and putPosition, rather than with BufferBuilder#pos()#color()#tex()#endVertex(); which is how I'd like (and only know how to) do it.

Edited by Cadiboo

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Link to comment
Share on other sites

7 hours ago, Cadiboo said:

They didn't. You said "Start a new project". Someone made their own game with their own renderer.

That answers the "how was that relevant" question.

Cool.

It still doesn't help you do what you want though. :P

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

Heres my PR if anyone's interested https://github.com/MinecraftForge/MinecraftForge/pull/5166

And here's my repository where I will be implementing MarchingCubes https://github.com/Cadiboo/MinecraftForge/tree/RenderHooksMarchingCubes

 

Here are a couple screenshots of whats possible with my hooks (there are more on the PR)

2018-09-27_21_59_25.png.40f7d5d3d9688e4bb07e73eaaf450deb.png2018-09-27_22_31_57.png.d376bbb467a2c34c9a5eba266ab61ad3.png2018-09-27_23_32_09.png.daa6ae95141de62b93cb36d60fba047e.png2018-09-27_21_58_36.png.e4887a9a702837bb3290f1de27d42aa5.png

  • Like 1

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Link to comment
Share on other sites

I've got everything working perfectly except for the lightmap, I don't know how to get those variables or do smooth/flat rendering with them. Any suggestions would be appreciated!

2018-09-28_19_27_50.png.867af5a8cb3832b7c1a94621c7c85c0f.png2018-09-28_19_27_28.png.3333ea8dc93bb7b152be546e844c00eb.png

As you can see in both images the lighting is the same for every block.

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Link to comment
Share on other sites

1 hour ago, Cadiboo said:

've got everything working perfectly except for the lightmap, I don't know how to get those variables or do smooth/flat rendering with them. Any suggestions would be appreciated!

I was putting my variables in in the wrong order... The correct order is lightmap(skyLight, blockLight). I still don't know how to get the proper variables though, currently I'm doing this which is very inefficient

Spoiler

int lightmapSkyLight = 0;
int lightmapBlockLight = 0;

int lightmapSkyLightUsed = 0;
int lightmapBlockLightUsed = 0;

for (int offset = 0; offset <= 5; ++offset)
{
  for (final EnumFacing facing : EnumFacing.VALUES)
  {
    final int skyLight = cache.getLightFor(EnumSkyBlock.SKY, statePos.offset(facing, offset));
    if (skyLight > 0)
    {
      lightmapSkyLight += skyLight;
      lightmapSkyLightUsed++;
    }
    final int blockLight = cache.getLightFor(EnumSkyBlock.BLOCK, statePos.offset(facing, offset));
    if (blockLight > 0)
    {
      lightmapBlockLight += blockLight;
      lightmapBlockLightUsed++;
    }
  }
}
if (lightmapSkyLightUsed > 0)
{
  lightmapSkyLight = (lightmapSkyLight << 4) / lightmapSkyLightUsed;
}
if (lightmapBlockLightUsed > 0)
{
  lightmapBlockLight = (lightmapBlockLight << 4) / lightmapBlockLightUsed;
}

Heres my final code. https://github.com/Cadiboo/MinecraftForge/blob/4d26e2a8b4edb41d572504b40b411f1ff6b7591f/src/test/java/net/minecraftforge/debug/client/rendering/RebuildChunkBlocksEventTest.java

I'm going to work on understanding & optimising it now because I basically just copy-pasted the old code & only changed what I had to to make it work.

Screenshots:

2018-09-28_20_36_59.png.20f946fa0088bb9384e778b9c617e4a1.png2018-09-28_20_39_01.png.fa76dde1299de6d146ebec63aceff5fe.png

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Link to comment
Share on other sites

  • 1 month later...

Finished NoCubes (for the moment)

https://github.com/Cadiboo/NoCubes

Screenshots:

2018-10-25_21_57_37.png.f8bb71afb47ac4d481efac5aaf279a7a.png2018-10-25_21_59_19.png.4341cc563160811701dde37447b6b509.png1136815022_ScreenShot2018-11-03at2_43_51pm.thumb.png.ff09a27c1cccc9a897e4574e753b6054.png2018-10-25_22_10_00.png.b8a159ded56dd72b518551af1756dee6.png2018-11-03_14_57_44.png.ab29d9397560a659d04f7d073319f92f.png

Edited by Cadiboo
  • Like 1

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

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.



×
×
  • Create New...

Important Information

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