Topic: Feature Requests (Engine Only)

Ok seeing as I have seen people requesting features being placed all over the place I will see if I can get this forum organised.

Here you will put what you think will make the engine better but please do not put editor requests or bug reports her as this is not for that. We look forward to hearing from you.

Btw me and Anael will be answering anything that might happen some that seem far fetched will be answered in due time. Graphics improvements will be usually answered by me, anything else will usually be answered by Anael or me if I know how to add it.

Re: Feature Requests (Engine Only)

automatic update i have tray to install scripts from every where in this forum but no lock

an using unity 3D wen i found this engine my programing is limited so if you make this engine friendly you will get
more user

Re: Feature Requests (Engine Only)

Loading screens.

Not sure how feasible this is. Not sure if loading needs to be forked, or if there just needs to be a loading callback. Also not entirely sure how the loading screen would get loaded. Obviously it would be loaded first and separately. Also not sure what kind of metric can be used to measure progress, either relative or absolute.

Re: Feature Requests (Engine Only)

Well, don't necessarily need LoD in engine, can easily be implemented in a behaviour (at least, without checking too much, I believe it should be able to be...) but for this, it would need, as a minimum, a ModelRef type for MVariable we can expose in the editor.
I assume it would be possible to switch the model at run time from a behaviour?

Re: Feature Requests (Engine Only)

yes, it would be good to have a simple lod system,
at least an option in the blender exporter that can export the mesh with reduced detail automatically.

What would work right now is to export one mesh from blender with multiple objects (each object being a different level of detail).
In maratis, the multiples blender objects are sub-meshs (MSubMesh), you can then access one sub-mesh, it's displays (MDisplay) and hide/unhide (display->setVisibility) depending with LOD you want to show


Another solution can work from script, you create a material animation in blender with your multiple objects, you do for example :
frame 0 : material object 1 with alpha 1, the others objects with alpha 0
frame 1 : material object 2 with alpha 1, the others objects with alpha 0

Then, from script, changing the animation will change the LOD.
(limitation : this works only with static object)

Re: Feature Requests (Engine Only)

Hmmm. The issue with the submesh thing is that you can't then have complex models with lods. I was thinking that having a behaviour switching the mesh would allow for that... but I guess the submesh thing would be suitable for most situations.

I don't think the material animation thing is really feasible though, as you would need changeAnimation(obj, "SomeAnim" .. lodlevel) which gets a bit messy...

I will have a look at making a behaviour to switch the submeshes (although, I don't have a model I can test...) If it works, I will put it forward as a potential behaviour to integrate into Maratis. By the way, there are some generic behaviours here that might be good at some point to integrate. They're using my extended behaviour database though, so would need a little modification to get working without it.

Re: Feature Requests (Engine Only)

hey can Somebody implement the formula of tangent like this -

camera aspect like this - … spect.html
i mailed to anael but meh ill add it here to so somebody could add it
and hopefully sin and other formulaes get there too !

Re: Feature Requests (Engine Only)

I will have to check up on this, but I think the standard lua API should be able to cover this... at least the tan... try


I'll take a look at the aspect stuff, shouldn't be too hard to add, although I don't see anything which could help in the current Maratis 3D lua API.

Re: Feature Requests (Engine Only)

yes, lua math is enabled by default (math.sin, math.cos, math.tan, math.sqrt...) :

Re: Feature Requests (Engine Only)

i wanted to use it   in c++ but ill try it in lua thank you anael and nistur 
hey nistur could you write (a short document or anything )  how did you integrate camera aspect thing i was trying it myself i wasn't able to get anywhere (if you do not have the time its  totally okay, just add it whenever you can thank you for the help !)

Re: Feature Requests (Engine Only)

Occlusion culling,or manual occluder(like blender game engine).

Re: Feature Requests (Engine Only)

All that is good folks, thanks, continue to note ideas, we'll check this forum when improving on the code.

beaterator : there is occlusion culling when using the standard renderer (not in the fixed renderer as it uses a hardware feature), but it's totally automatic unlike blender so it's not mentioned in the editor.

Crucio : all the maths functions are there by default in c/c++ :

Re: Feature Requests (Engine Only)

thank you i had no clue about that now just ..... camera.aspect smile

Re: Feature Requests (Engine Only)

hello, i work with maratis3D some time ago and would be like some basic features and very usefull for the most of game projects, a terrain, water and sky system (my favorite water and sky plugins are hydrax and skyx for ogre, very powerfull and the fps in runtime are incredibly more high that some comercial engines) if this take many dev time then i would be like a file with a basic sample with terrain+water+sky that i can be reuse in my projects, thanks.

Last edited by 3dcat (2012-12-09 23:04:48)

Re: Feature Requests (Engine Only)

It would be nice to be able to hide the console for the published version of a project to make the game look cleaner.
EDIT: Oh and I would like it if I was able to set the icon and title of the window of the published project.

Last edited by Almighty Laxz (2012-12-24 09:56:16)

Re: Feature Requests (Engine Only)

I dont understand well the way for export from Blender a mesh with a GLSL shader (i can´t see the shader working before export to Maratis), i try with very basic vertex and fragment codes but i fail,  i would be like a shader editor in Maratis.

Last edited by 3dcat (2012-12-25 17:59:29)

Re: Feature Requests (Engine Only)

3dcat : Yes, at some point a material editor will be necessary.

For now, Blender cannot preview shaders for Maratis, but once your model is exported from Blender and displayed in Maratis open your shader with a text editor, when you save the shader it will update automatically in Maratis.

Linking the shaders in Blender :

Look at "Custom shaders" example to see how to write GLSL shaders for Maratis :

Re: Feature Requests (Engine Only)

what do you think about adding parallel lights (sunlight)?

Re: Feature Requests (Engine Only)

I know this is a 3d game engine but You still might want to have a way to display images (png, jpeg, gif) the current way is mapping to a plane but occasionally that has some weird results

(Uses Menus and other UI Mainly Probably some backdrops)


Almighty Laxz wrote:

EDIT: Oh and I would like it if I was able to set the icon and title of the window of the published project.

Use XN Resource Editor for the Icon but Im not sure how to change title (Yet)

Last edited by Rapdorian (2013-03-10 19:52:11)


Re: Feature Requests (Engine Only)


first I want to say that Maratis can be a really great engine, but currently it lacks in some important things that I list below:

1.First of all Maratis needs an easy way to create new objects beside the editor, I mean how should I create for example a lot of enemies that comes in waves while the game is running ? I mean placing every enemy in the editor just cost ram and it don't allow specific things.
2.A scenegraph, because as far I can tell Maratis use only frustum culling ? This reduce the gpu a little, but it will still render objects that are behind a wall etc. so it need occlusion culling to render larger scenes.
3.A propered way of collision detection, because in the current way I need to check for every object if it collide with another one, but that shouldn't be necessary since Bullet already makes collision checks in order to avoid intersections with them, so it would be great if the game class get an collision callback so I can grab the desired collision out of this function.

Ps: I used Maratis a while ago so maybe some of these things are already done wink.

Last edited by Taz (2013-06-17 22:21:26)

Re: Feature Requests (Engine Only)

More control over the window size, and the ability to call these functions from within the application (if the user wants to switch between windowed and full-screen modes, for instance).

Last edited by sunnystormy (2013-11-12 17:52:07)

Re: Feature Requests (Engine Only)

New Behavior: Animated Textures. The idea comes from the BGE( link: … tep_4.html ) This can be used as a fake particle, but its static. With some api like isVisible = true/false, startAnimation =  true/false. I believe this is quite useful.

Re: Feature Requests (Engine Only)

Some more features:
Show Profile, the idea is to display on screen information about debug and performance, like show fps, draw-calls, objects on screen, triangles, etc... Perhaps some lua api could be added to display the info in-game. Example here -> … nd_Profile

Editor: View shading->Wireframe, Shaded, Textured.
Editor: Snap to grid.

Engine render: Object Batching->static/Dynamic. Useful for scene optimization. Example-> … ywdVcir9mA

Build-in image filters: Bloom, Glow... Bloom as a start would be nice. Example->

Offscreen Rendering: An optimization for the image filters, example here-> … _Rendering

New Behavior: Camera shake.
New Behavior: Navmesh and Steering for enemy AI.

Last edited by Akira_san (2014-08-04 19:41:47)

Re: Feature Requests (Engine Only)

+1 with better engine render features
and as it was suggested before, multi plugin / editor plugin features so we could add stuff to the default editor
everyone could make plugins and we could have a big plugin library

Last edited by ulbex (2014-08-13 22:39:57)

Re: Feature Requests (Engine Only)

Yeah, that would be nice!