[Tutorial] World Renderer [MCreator 2022.3 / 2023.1 / 2023.3]

Started by sumeshi0216 on

Topic category: Plugins and third-party tools

Joined May 2021
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
[Tutorial] World Renderer [MCreator 2022.3 / 2023.1 / 2023.3]
Wed, 01/03/2024 - 04:21 (edited)

This plugin allows you to render objects on the sky and world

Download:

https://mcreator.net/plugin/93491/custom-fog-plugin-forge-1182-1192

Source code repository:

https://github.com/Sumeshi2/World-Renderer

 

Event triggers:

World Renderer currently adds 5 event triggers (It is 6 if the version is for 1.14.4 / 1.15.2 / 1.16.5 / 1.17.1)

- "Render world"

- "Render sky"

- "Render fog"

- "Compute fog color"

- "Compute fog density" (Forge 1.15.2 / 1.16.5 / 1.17.1)

- "Compute FOV"


Event trigger "Render world":

It is possible to render objects on the world. You can use these procedures

- "Render entity"


Event trigger "Render sky":

It is possible to render objects on the sky. You can use these procedures

- "Render abyss"

- "Render deep sky"

- "Render moon"

- "Render regular polygon"

- "Render sky box"

- "Render stars"

- "Render sun"

- "Render sunlights"

- "Render texture"


Event Trigger "Render Fog":

- "Set fog distance": It can set fog distances of a start and an end

- "Set fog shape": It can set a fog shape to a sphere or a cylinder (Forge 1.18.2 / 1.19.2 / 1.19.4 / 1.20.1)


Event Trigger "Compute Fog Density" (Forge 1.14.4 / 1.15.2 / 1.16.5 / 1.17.1):

If you want to change fog density, use it (Forge 1.15.2 / 1.16.5 / 1.17.1)


Event Trigger  "Compute Fog Color":

It can set fog color. The transparency cannot be changed


Event Trigger "Compute FOV":

FOV value can be changed


Regardless of the dimension, suntime, or nighttime, these event triggers are always triggered. If your modding need these distinctions, you will need to use the condition like the following


"Clear all rendered objects":

If you want to remove the vanilla sky, before you render objects, use the procedure. On event trigger "Render world", It should not use because even blocks and entities will be removed


"Rotate pose":

Rotation will be needed to define for some procedures


""Set texture": 

Some procedures need to define texture. If necessary, you will need to use the procedure. If using your texture, You will need to import the texture as the type "Other"



""Set color": 

Only if Forge 1.18.2, 1.19.2, 1.19.4 1.20.1, you will need to use the procedure to set a color. Not required for other versions


"Render abyss":

This procedure can render an abyss on the bottom of the sky. It should be used on the event "Render sky"

- "constant": The vanilla abyss is usually rendered when player is at Y=62 or below. However, if this option is enabled, the condition will be ignored and the abyss is always rendered


"Render deep sky":

This procedure can render an deep sky on the top of the sky. It should be used on the event "Render sky"

If you want to use the vanilla sky color, use a procedure "Get sky color" in this way. The following is a comparison without and with deep sky



"Render entity":

This procedure can render an entity on the world. It can only be used on the event "Render world"

- "entity": It is entity to render

- "x/y/z": It defines a world position to render

- "yaw/pitch/roll": It defines a rotation of an entity model

- "size": It is a value which defines a size of an entity model. If the value is 2, the size of a model will be twice

- "brightness": It is the brightness of an entity to render. It is defined from values of sky and block lights

Only if it is in Forge 1.18.2 / 1.19.2 / 1.19.4 / 1.20.1, It is possible to change the color


"Render moon":

This procedure can render a moon on the sky. It cannot change the angles. It should be used on the event "Render sky"

- "constant":  it defines whether or not a moon disappears if it rains. If it is enabled, The moon will be always rendered

- "moon phase": If you enable it, moon phases will be used like the vanilla moon. Besides, you will need to use a texture such as the following

It is an example of setting a texture and a color. You will need to import your texture as "Other" and input a mod ID and a texture name


"Render regular polygon":

This procedure can render a regular polygon on the sky. It should be used on the event "Render sky"

- "pose": It defines the rotation of a regular polygon with a new variable "pose"

- "mode": It can change the appearance of a regular polygon to render

- "vertex": It defines the numbers of regular polygon vertices

- "constant": it defines whether or not a regular polygon disappears if it rains. If it is enabled, The regular polygon will be always rendered

The following is an example


"Render sky box":

This procedure can render a sky box on the sky. It should be used on the event "Render sky"

- "mode": It defines how to map a texture

  - "SIX_FACES": Different textures can be used for each face. You will need to use the texture like in the above image

  - "ONE_FACE": With one texture, a sky box is rendered

  - "END_SKY": Like "ONE_FACE", but texture orientation is a little different

- "constant":  it defines whether or not a sky box disappears if there are boss mobs in the world. If it is enabled, The sky box will be always rendered

The following is an example


"Render stars":

This procedure can render stars on the sky. It cannot change the angles. It should be used on the event "Render sky"

- "amount": It is the numbers of stars to render

- "seed": It is a seed value which is used for the random numbers to define star positions

- "constant":  it defines whether or not stars disappear if it rains. If it is enabled, The stars will be always rendered

The following is an example

You can use a vanilla star color like in the above image


"Render sun": 

This procedure can render a sun on the sky. It cannot change the angles. It should be used on the event "Render sky"

- "constant":  it defines whether or not a sun disappears if it rains. If it is enabled, The sun will be always rendered

The following is an example


"Render sunlights":

This procedure can render sunlights on the sky. It cannot change the angles. It should be used on the event "Render sky"

The following is an example

Other than the time that is sunrise and sunset, note that the procedure "Get sunlight color" return a transparent color


"Render texture":

This procedure can render a texture on the sky. It should be used on the event "Render sky"

- "pose": It defines rotation of a texture to render

- "size": It defines a size

- "constant":  it defines whether or not a texture disappears if it rains. If it is enabled, The texture will be always rendered

The following is an example

Edited by sumeshi0216 on Wed, 01/03/2024 - 04:21
Joined Jan 2020
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
Oooo looks good so far!
Sat, 07/29/2023 - 21:19

Oooo looks good so far!

Joined Sep 2021
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
can you do this for 1.14.4…
Tue, 08/08/2023 - 08:58

can you do this for 1.14.4 as well?

Joined May 2021
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
I'm planning on doing it,…
Wed, 08/09/2023 - 23:43

I'm planning on doing it, but it will need to take some time because I'll have to rewrite all the source code

Joined Aug 2023
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
Is there a way to disable…
Sat, 08/19/2023 - 14:45

Is there a way to disable abyss at all? Or at least change abyss render height

Joined May 2021
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
It will need to clear all…
Sat, 08/19/2023 - 23:42

It will need to clear all sky objects and render vanilla objects if necessary

Joined Mar 2020
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
Hello!Thank you for making…
Mon, 08/21/2023 - 11:48

Hello!
Thank you for making this amazing plugin, I absolutely love it!
Though, for some reason whatever I do I always get a "package Axis does not exist" error and my mod fails to compile.

I'm trying to render a texture in the sky, but I have no idea what's happening. I would really appreciate a bit of help :)

Joined May 2021
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
Could you tell me using…
Mon, 08/21/2023 - 14:00

Could you tell me using Forge version?

Joined Mar 2020
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
I'm using Forge 1.19.4 (45.1…
Mon, 08/21/2023 - 14:30

I'm using Forge 1.19.4 (45.1.0), 2023.2

Joined May 2021
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
Could you send me your…
Mon, 08/21/2023 - 14:45

Could you send me your procedure screenshot?

Joined Mar 2020
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
Sure! Here is one that gives…
Mon, 08/21/2023 - 14:55

Sure! Here is one that gives this error:

[Link]

Joined May 2021
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
Umm... seems like a strange…
Mon, 08/21/2023 - 15:57

Umm... seems like a strange error, try the following two

- Try to regenerate code

- Check if there is "com.mojang.math.Axis.java" from the file browser

Joined Mar 2020
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
Regenerated code multiple…
Mon, 08/21/2023 - 16:02

Regenerated code multiple times, still gives the same error.

Axis.java is present 3 times in the same locations as on your screenshot

Joined Mar 2020
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
Update!Manually added …
Mon, 08/21/2023 - 16:07

Update!
Manually added "import com.mojang.math.Axis;" by editing the procedure code.

Now it compiles and works as intended.
Though this is not optimal in any way, of course.