26

(1 replies, posted in General)

Hi, max files are not supported, use Collada (dae), or obj.

The feature list is here :
http://www.maratis3d.org/?page_id=49

and if it's not enough, in the function "gameWinEvents" add :

case MWIN_EVENT_CHAR:
        {
            unsigned int key = windowEvents->data[0];
            const char * name = getKeyName(key);
            if(name)
                input->downKey(name);
        }
        break;

(to be tested)

yes, but you'll have to compile Maratis from source.

open "MGameWinEvents.h", in the function "getKeyName", in the "switch(key)"

change:

    case MKEY_KP0: return "0";
    case MKEY_KP1: return "1";
    case MKEY_KP2: return "2";
    case MKEY_KP3: return "3";
    case MKEY_KP4: return "4";
    case MKEY_KP5: return "5";
    case MKEY_KP6: return "6";
    case MKEY_KP7: return "7";
    case MKEY_KP8: return "8";
    case MKEY_KP9: return "9";

to:

    case '0': case MKEY_KP0: return "0";
    case '1': case MKEY_KP1: return "1";
    case '2': case MKEY_KP2: return "2";
    case '3': case MKEY_KP3: return "3";
    case '4': case MKEY_KP4: return "4";
    case '5': case MKEY_KP5: return "5";
    case '6': case MKEY_KP6: return "6";
    case '7': case MKEY_KP7: return "7";
    case '8': case MKEY_KP8: return "8";
    case '9': case MKEY_KP9: return "9";

Yes, it's a limitation, sorry.
This case is not handled in the code,
it need to be added inside "MGameWinEvents.h"

30

(5 replies, posted in General)

Basically,
in Blender, all the animations need to follow each other in the timeline.
Then you indicate the range (start and end) of each sub-animation when you export.

31

(5 replies, posted in General)

thanks,
ok so your animations should not all start at frame 2,
all animation should all follow each other, then each animation is in a different time range.

it should look more something like this :

Anims num="4">
        <anim id="0" name="" start="2" end="27" loops="-1" />
        <anim id="0" name="" start="28" end="72" loops="-1" />
        <anim id="0" name="" start="73" end="86" loops="-1" />
        <anim id="0" name="" start="87" end="120" loops="-1" />
</Anims>

You can fix it in Blender or with a text editor (to try) > when you save the mesh file it will update automatically in Maratis if you already imported it in the scene.

32

(5 replies, posted in General)

Can you open the .mesh file exported from blender with a text editor and copy the first lines here so I can see ?
It's xml, there is a block called <Animation> that deal with the multi-anim.

Ex:

<Animation>
    <ArmatureAnim file="sheep.maa" />
    <Anims num="2">
        <anim id="0" name="" start="10" end="10" loops="-1" />
        <anim id="1" name="" start="0" end="82" loops="-1" />
    </Anims>
</Animation>

Just to be sure, did you go in the entity properties in Maratis and try changing the current animation ?

33

(2 replies, posted in General)

Hi, here are two links from the wiki :
http://wiki.maratis3d.org/index.php?tit … om_Blender
http://wiki.maratis3d.org/index.php?tit … r_settings

34

(1 replies, posted in General)

Hi, and welcome to the forum.
I'm Anaël, I'll try to reply best to your questions :

1: there was no new release for a long time, partially because a major code rewriting of Maratis Core and Editor is going on.
You can follow the development here : https://github.com/anael-seghezzi/Maratis-4

2: Yes, there is a "publish" button that compact your game files and embed it with a player executable.

3: Maratis Editor is the toolset that allow you to level design and test your game in realtime. Maratis Engine is the 3d engine itself (it's possible to make a game without using the editor) and when publishing, the player only uses the engine. Maratis SDK is only an interface to Maratis Engine (in c++).

4: Yes and No. There is no terrain engine, but you can export a terrain mesh from a 3d software. It means you'll have to optimize the visibility yourself if you want to handle large terrain. Or to extend a custom plugin in c++ to draw terrain the way you want. Water and Ocean can be created with GLSL shaders, but again not by default.

5: Lua is used for game logic programming. C++ is used to create custom plugin, mainly to do things that need fast computing (custom pipeline, rendering, complex AI...).

You need programming to make a game, but depending of the game it's more or less difficult.
Lua is a very simple language to learn. C++ is much more complex (easy to learn but years to masters).
I suggest to start simple and up the complexity step by step, while following a solid structure.

Bests

Well I'm not sure of the benefits compared to the hassle.

For utf8, I adapted this code from Bjoern Hoehrmann (for both coding and decoding) :
https://github.com/anael-seghezzi/Marat … tinyutf8.h

Text handling in M4 support utf8 (MGui2 too)

It looks good, I'm happy to see movement of another alternative.
I just don't understand, and feel sad, about the refactoring, it will make any code exchange from both direction very difficult.

37

(4 replies, posted in General)

Hi, and welcome to Maratis forum.

Unfortunately there is no fast and ready Android support,
the majority of the source code is compatible and some contributors managed to port to Android,
but not without putting their hands in the dirt.

If you are already experimented with Android software development,
you may want to try Dahnielson's fork of Maratis that is very close (or already able ?) compiling to Android :
https://github.com/dahnielson/Maratis

The future version of Maratis is also more Android friendly, but still highly experimental :
https://github.com/anael-seghezzi/Maratis-4

38

(3 replies, posted in Plugins)

animation will overwrite any bones transformation you are doing,
you have to remove the keyframes of the bones you want to transform (by editing your mesh file manually for example)

39

(3 replies, posted in Plugins)

Hi,
did you read this documentation ? http://www.maratis3d.org/?p=277

Animation is only supported by Armatures, in case you animate objects directly.

Also, don't forget to setup this :
http://www.maratis3d.com/wp-content/uploads/2011/01/12.jpg

You can also look at this tutorial : http://forum.maratis3d.com/viewtopic.php?id=59

40

(64 replies, posted in News)

Actually, the last Maratis-3x is still there : https://code.google.com/p/maratis/source/checkout

The link given by damvcool is for Maratis-4x (experimental and in-progress)

41

(4 replies, posted in General)

Shaders in Maratis are in GLSL (like shadertoy), you can download an example here : http://www.maratis3d.org/?p=548

It's standard GLSL so you can find a lot of ressources over the Internet, the difference with other engines only beeing variables names specific to Maratis.

I understand about the space, you definitively have to handle some sort of procedural generation (look at Perlin noise and random). Not necessarily for modeling, but for object placement in space.

For example, create multiple models of asteroids, and clone then in random position around a cluster to create an asteroid cluster, etc...

If the space is very large, you might also need a way to reduce the complexity of the scene when objects are far away.

42

(4 replies, posted in General)

Hi, welcome to the forum,
it's good to see new members interested in Maratis.

What are "expansive planes" ?

About space environment, an interesting approach is to use procedural (perlin noise, maths...) to generate stars / constellations / planets. It can be controlled and mixed with 3d meshes. Or even using using shaders like this on shadertoy : https://www.shadertoy.com/view/XlfGRj (for inspiration, this shader would need to be adapted to work with maratis).

43

(8 replies, posted in Editor)

Update :

Maratis is now using a correct linear color space by default, gamma correction was not handled before. The good news is that all lightning will be now correct. The bad news is that previous Maratis projects will appear brighter because gamma correction was missing (I might add an option to disable gamma correction for compatibility with older projects).

8 bit textures are considered to be in sRGB space, and 16bit and 32bit textures (hdr) are considered to be in linear space.


Jurgel > yes, do you have some insight about that ? I don't have an Android device to test it.

44

(8 replies, posted in Editor)

Optional SDL2 backend is there on github : https://github.com/anael-seghezzi/Marat … Common/GUI
Thanks Jurgel !

45

(8 replies, posted in Editor)

jurgel >
the SDL backend would be cool, we can add an OPTION to the CMake build to handle the different includes to choose between SDL  and GLFW (I can help with that).

Android support would also be a must !
A discussion started on github : https://github.com/anael-seghezzi/Maratis-4/issues/1

46

(8 replies, posted in Editor)

The rewriting of Maratis editor for the future version 4x is starting to take a concrete shape,
so I feel more confident to share news about it :

- There is now a github repository for Maratis-4 : https://github.com/anael-seghezzi/Maratis-4
It's highly experimental and the structure of the code was reviewed.

- The build system is based on CMake instead of Scons

- System context and inputs are handled by GLFW : http://www.glfw.org/
(+ a SDL2 backend from Jurgel)

- All editor code base was rewritten to be modular and easier to maintain and extend, and is using MGui-2.
- There is Support for multiple windows, preferences for themes and shortcuts.
- Object picking and transformation was also rewritten and is now functional.

- MGui-2 text now supports UTF8 and fonts.
- Maratis engine is already functional, with some additions (per-entity material support, faster math code...).

- And there is preliminary support for syntax highlighting in lua (for in-editor script editing) :

http://www.maratis3d.org/wp-content/uploads/2015/05/m4_syntaxcol-1024x488.jpg

47

(22 replies, posted in Off-Topic)

I published the current (experimental) code of Maratis 4 on github - linked to Maratis tiny C library - with the base code of the new editor :

https://github.com/anael-seghezzi/Marat … -C-library

48

(22 replies, posted in Off-Topic)

The adjustment is quite small, I'm surprised how simple it is.
First thing to check is the window/events system, but when using glfw or sdl there is no problem (sdl is better supported though), then the main loop need to be parsed a bit differently. There might be some modifications to do for file parsing but I didn't test it.

49

(22 replies, posted in Off-Topic)

Some update on github : https://github.com/anael-seghezzi/Marat … -C-library
And a first web experiment compiled to asm.js with emscripten : http://maratis3d.org/js/m_voronoi/m_voronoi.html

50

(2 replies, posted in General)

setAnimationSpeed (per object) :
http://wiki.maratis3d.org/index.php?tit … ationSpeed