MV3D - 3D rendering for RMMV with Babylon.js

Dread_Nyanak

Veteran
Veteran
Joined
Feb 24, 2019
Messages
161
Reaction score
256
First Language
English
Primarily Uses
RMMV

Author: Dread/Nyanak
Version 0.4.2

A 3D rendering plugin for RPG Maker MV.

Wall tiles (A3 and A4) are transformed into 3D walls, allowing you to easily create 3D maps.
Regions and terrain tags can also be used to control the height of tiles.

The airship will collide with walls if it isn't flying high enough. However you can change how high it flies using plugin commands.

Plugin also supports 3D lighting as well as plugin commands to control the lighting and flashlights. Plugin does not support dynamic shadows, they don't work well with transparent textures in three.js.

You can control the camera distance, pitch, and yaw, and change between perspective and orthographic modes.
You can make 3D dungeon crawlers as well as isometric games if you want. You can even mix multiple styles into the same game, for example have the overworld be 3rd person or isometric, and the dungeons be 1st person dungeon crawlers.
See the screenshots below to see how it looks.


Big 3D castle


A simple hedgemaze example.


Dungeon crawling


Orthographic camera


Flashlight

Download on Github

To install the plugin in a new or existing project, download plugin.zip and extract the files into your project directory.
The plugin comes with two script files, babylon.js and mv3d-babylon.js. Both need to be loaded in that order.
There is also a folder img/MV3D which just contains a few images.

Todo:
  • ✔Pan camera with plugin commands
  • ✔Demo project (available but not finished)
  • ✔Switch rendering to Babylon.js
  • ✔Improve performance
  • ✔Dynamic shadows (patron only)
  • ✔Slopes
  • ✔Animations
  • Bug squishing
  • Support 3rd party plugins
Possible future features:
  • Non-tile-based movement
  • Control camera with mouse / touch
  • load 3d models
  • VR mode
If you want to use this plugin commercially, I ask that you either become a patron or purchase the plugin.
If you use this plugin please credit me as Dread/Nyanak or Dread_Nyanak.
If you want to share this plugin with others then please link them either to this thread or to my github repository.
 
Last edited:

peq42_

Yeet
Veteran
Joined
Feb 5, 2016
Messages
480
Reaction score
285
First Language
Portuguese(BR)
Primarily Uses
RMMV
this looks impressive! Great work!
 

ledomaine

Villager
Member
Joined
Jun 6, 2016
Messages
19
Reaction score
27
First Language
French
Primarily Uses
RMMV
Amazing! Imagine coupling that with my MMORPG Maker MV plugin! New possibilities!
 

JtheDuelist

Your Friendly Nieghborhood Stygian Zinogre
Veteran
Joined
Dec 9, 2017
Messages
1,180
Reaction score
1,435
First Language
English
Primarily Uses
Other
I just tried to use this, and nothing happens. As in, still 2D. Really wish there was a better explanation on how this is supposed to be set up to used because it is clear this isn't plug and play, which the way you explain setting it up makes it seem like it is supposed to be plug and play.
 

Synrec

Veteran
Veteran
Joined
Nov 6, 2019
Messages
36
Reaction score
13
First Language
English
Primarily Uses
RMMV
Cool script, bugs I've noticed from simple plug and play is that it isn't currently compatible with graphical scripts (MogHunter emotion faces which uses pixiv and character creation type scripts.)

This is possibly due to the fact that the script tries to render a 2D image as a 3D whereas the other scripts process it as 2D.

Also, there are some weird stuff that happens when you try to add a ladder to a wall tile.

Otherwise, this script is really good.
 

bazrat

Pixel Game Maker MV
Veteran
Joined
Oct 15, 2018
Messages
239
Reaction score
167
First Language
English
Primarily Uses
Other
That dungeon crawling image looks amazing. It seems like a super mode 7 xD
 

Dread_Nyanak

Veteran
Veteran
Joined
Feb 24, 2019
Messages
161
Reaction score
256
First Language
English
Primarily Uses
RMMV
I just tried to use this, and nothing happens. As in, still 2D. Really wish there was a better explanation on how this is supposed to be set up to used because it is clear this isn't plug and play, which the way you explain setting it up makes it seem like it is supposed to be plug and play.
Could you open up the console with F12 to see if there's any errors?
You just need to put the MV3D folder in your project directory and load three.js and MV3D.js as plugins and it should work. (three.js needs to be loaded first)


Cool script, bugs I've noticed from simple plug and play is that it isn't currently compatible with graphical scripts (MogHunter emotion faces which uses pixiv and character creation type scripts.)

This is possibly due to the fact that the script tries to render a 2D image as a 3D whereas the other scripts process it as 2D.

Also, there are some weird stuff that happens when you try to add a ladder to a wall tile.

Otherwise, this script is really good.
Yeah, it won't work with a lot of graphical plugins. The 2D map isn't rendered at all, so anything that changes how the map and characters are rendered won't work with this.
Anything that changes the gui and menus should work fine though.
 

JtheDuelist

Your Friendly Nieghborhood Stygian Zinogre
Veteran
Joined
Dec 9, 2017
Messages
1,180
Reaction score
1,435
First Language
English
Primarily Uses
Other
@Dread_Nyanak This is all the console gives. Completely blank project by the way.
upload_2019-11-7_19-53-52.pngupload_2019-11-7_19-56-38.png upload_2019-11-7_19-57-9.png
 

Aloe Guvner

Walrus
Veteran
Joined
Sep 28, 2017
Messages
1,628
Reaction score
1,082
First Language
English
Primarily Uses
RMMV
@JtheDuelist the "=>" token is an arrow function, which was added in Javascript ES2015. If your MV doesn't recognize it, you must be using an old version of MV.
When there's a syntax error, the script won't load at all which is why you don't see any difference.
 

JtheDuelist

Your Friendly Nieghborhood Stygian Zinogre
Veteran
Joined
Dec 9, 2017
Messages
1,180
Reaction score
1,435
First Language
English
Primarily Uses
Other
@Aloe Guvner I've always stuck with 1.5.2 because all the stability issues 1.6.0 brought scared me off of ever updating beyond v1.5.2. Also, if I update, other older plugins I use may break as well... So it is a "darned if I do, darned if I don't" situation. If I do update, I have to go and update ALL of my WIP projects, which there is almost 12 or 13 of, which is going to be another pain in the rear to do.
 

Aloe Guvner

Walrus
Veteran
Joined
Sep 28, 2017
Messages
1,628
Reaction score
1,082
First Language
English
Primarily Uses
RMMV
It's of course your choice whether to upgrade MV or not. If you're in the middle of a project, the general thinking would definitely be to *not* upgrade. However if you're installing a script like this, that is a massive change to how your game is structured so you're probably not in the middle of a project.

1.6.1 fixed all of the editor issues that happened in 1.6.0. The change in the core code is very minimal. Every person who reported that their "plugins broke" after upgrading turned out that they didn't upgrade correctly. Not guaranteeing anything of course, but the fears are wildly overstated due to user error.

You always have the option to transpile the modern Javascript into old Javascript if you don't want to upgrade, and if the author allows you to. Though that tutorial is over a year old and I've been meaning to update it!
 

Sunjean

Veteran
Veteran
Joined
Oct 18, 2019
Messages
60
Reaction score
22
First Language
Norvegian
Primarily Uses
RMMV

Dread_Nyanak

Veteran
Veteran
Joined
Feb 24, 2019
Messages
161
Reaction score
256
First Language
English
Primarily Uses
RMMV
Just added some plugin commands to pan the camera and also change the camera target.
 

pasunna

Veteran
Veteran
Joined
Feb 3, 2019
Messages
484
Reaction score
190
First Language
thai
Primarily Uses
RMMV
I try it
but my graphic is not look smooth as your
what is your recommended setting for this plugin
thank you
 

Dread_Nyanak

Veteran
Veteran
Joined
Feb 24, 2019
Messages
161
Reaction score
256
First Language
English
Primarily Uses
RMMV
@pasunna
Can you show me what issues you're experiencing? The default settings are pretty similar to what I used in the screenshots.

There are a few graphical issues in the plugin still, like some weird gaps between meshes even though the faces share the same vertices.
Also the textures look a bit rough when viewed at a sharp angle. This is mostly noticeable when the camera is in motion.
 

Krystek_My

Veteran
Veteran
Joined
Dec 29, 2017
Messages
216
Reaction score
45
First Language
Polish
Primarily Uses
RMMV
@Dread_Nyanak We need the demo to test it, bcs the help file isn't very easy to read, and recreate things.
 

ledomaine

Villager
Member
Joined
Jun 6, 2016
Messages
19
Reaction score
27
First Language
French
Primarily Uses
RMMV
Worked pretty well on my side. Just had some bugs with some events not being recreated on map change but it might come from a compatibility issue with another plugin (I have not tried it on a "clean project"). Amazing work!
 

Calvynne

Veteran
Veteran
Joined
Oct 23, 2015
Messages
103
Reaction score
64
First Language
English
Primarily Uses
This is amazing! Thanks for the hard work!
 

Dread_Nyanak

Veteran
Veteran
Joined
Feb 24, 2019
Messages
161
Reaction score
256
First Language
English
Primarily Uses
RMMV
@Krystek_My
Yeah, I'm still working on the demo project. I'll try to have it up within the next couple days, as soon as I get it in a presentable state.
 

Users Who Are Viewing This Thread (Users: 1, Guests: 8)

Latest Threads

Latest Posts

Latest Profile Posts

I have recently discovered a Limit breaker for RPGmaker VXA, needless to say this changes everything.also I really like the changes this website has made.
It seems that my favorite anime page finally kicked the bucket... :,c
work in progres c:
Every RPG and MMO should let you transmog\glamour your gear so you can look the way you want.

Forum statistics

Threads
97,768
Messages
946,828
Members
128,977
Latest member
SorcererRed
Top