new monkey2 3d render animation

Started by iWasAdam, November 08, 2017, 14:32:49

Previous topic - Next topic

iWasAdam

OK, so here is my new 3d renderer in action.


CPU usage is a static 7.1%, and compiles flawlessly on Windows and MacOS.
Heavily optimised for multiple small 3d objects and many shaders.
If you look really closely you can see that all the vegetation is in motion and is all models and not flats with sprites!

Steve Elliott

Win11 64Gb 12th Gen Intel i9 12900K 3.2Ghz Nvidia RTX 3070Ti 8Gb
Win11 16Gb 12th Gen Intel i5 12450H 2Ghz Nvidia RTX 2050 8Gb
Win11  Pro 8Gb Celeron Intel UHD Graphics 600
Win10/Linux Mint 16Gb 4th Gen Intel i5 4570 3.2GHz, Nvidia GeForce GTX 1050 2Gb
macOS 32Gb Apple M2Max
pi5 8Gb
Spectrum Next 2Mb

Pingus


iWasAdam

just did a quick test on the old MacBook (2013), so I'll report those:
CPU 2.5 i5 (10.3% not being taxed at all)
GPU intel HD 4000
RAM 8gb
Windowed 1124, 740
FPS RockSolid 60

As you can see this is quite an old machine with relatively low specs, so is a great test.


BasicBoy

Is that all software-based rendering then, including the texture mapping?




iWasAdam

it's custom OpenGL + shaders. so hardware, but minimal hardware so will work on anything

iWasAdam

Here's a really interesting in dev shot:


It shows an overplayed 2d 'Page' with 4 vertical sliders. Looking at the bottom you can see they are mono, red, green, blue.
And... Looking again at the pic, you can see that the mono setting has desaturated the image, and also there are some color modifier going on as well. There are all live, so you can just play and get the result you want!

You could set the color faders down so they are dark, and then flash them to have lightning, etc where the entire opengl output responds.

Pingus

60 fps on a 2013 machine (Hd4000) sounds decent. Resolution is not very high tough (1280x960 I guess) ?

Chamferbox

nice mini map I would like one on my desk please  :D
iWasAdam may I ask which 3d format monkey2 supports? Is b3d still good?
Game assets for your projects
http://chamferbox.com

GaborD


iWasAdam

Although this is monkey2 it is NOT MOJO3D. it is custom opengl.

GaborD. I would really like to see about getting some idea from you about how you deal with openGL and see if we can get some stuff working between us on monkey2 :)

GaborD

I will have to get Monkey2, haven't used it yet.
Would be an interesting challenge to push it as far as possible.

iWasAdam

Definitely be up for some more opengl work. I've got a basic framework, but it's nothing too special.

My main gripe with MOJO3D is Mark insists on hiding EVERYTHING. I don't get the premise he uses which is load the objects put them in a scene and thats it - you have to show/hide the placed objects.

My way is to load objects, and decide per frame what you want to render and where and how many, etc

What are your thoughts?

GaborD

Well I am assuming he is doing some kind of auto culling (full object culling when out of the cam frustum), otherwise framerate would suffer in big scenes unless the user does it manually all the time.
But additionally the user should always be in control (and even be able to override the auto-culling, like for instance when moving vertices in the vertex shader, which the engine can't know about for culling purposes and thus would hide/show objects at the wrong places)
NB had hideEnt(true/false) for ease of use. I actually use that a lot.