Topic: Hello and some questions

Hello, I'm really impressed by this engine already, and I have some questions :

- what lighting system do you use, (forward lighting or deferred )
- would it be easy to get a fullscreen post process shader,
- how do I take control of a specific bone by code,
- how can I display 2D images in 2D space (simple slideshow or for GUI, pixel perfect display) ?

I'm using panda3D for a few months now and I like to code shader (.cg), but I think it's a bit overkill for simple prototyping and gameplay research; the problem is I don't know C++ at all, how hard would it be to reimplement the work I've done in panda in your engine (I have videos of it on my youtube, I have fur system, deferred shading, volumetric lighting, depth of field, etc). How do I take control of texture buffers in your engine ?

What I like about your engine is the blender => maratis pipeline, but I never tried to code shaders in blender.
Also, I've noticed performance problem and possible memory leak if this can help you : the windows version is using all my cpu with a empty project opened, if I open your Demos project and open my project again the cpu load goes down. I tried the linux version, I noticed if I edit a script multiple times and launch the game, the framerate goes down after a few edit (lagging). The windows version in Wine works better for me big_smile (lower cpu usage than in Windows).

I have one more question about the time in your engine, I read it's synchronized @ 60 fps, so if a game is launched on a old computer and displays it at say 30 fps, will all the routines go 2X slower ?

More questions coming big_smile
Btw I'm french, is it ok to speak it on this forum ?

Thanks and nice work so far.

Re: Hello and some questions

I can answer some of these questions for you smile I already asked about the full screen post processing shader, Anael provided an example over here. It requires some C++, but using any one of the code examples and tutorials can set that up for you. I should have a post processing shader tutorial, with external shader file, coming up shortly.

At this moment, there's no real 2D image system. The agreed method is to render a separate 3D scene without perspective. One of my subprojects is integrating the love2D engine to create a nice GUI solution, but again, I've not completed this yet. It also requires a couple of things which aren't (yet) in the binary release of Maratis.

With regards to the CPU usage, it's not _actually_ using 100%, it's just spinning idly. The standard way for a windows program is to put a sleep() call in at the end of the logic loop. Again, something Anael has added, but isn't in the binary release.

I can't answer any questions definitively about what happens if the computer forces a lower framerate, but I believe that most of the examples would probably run 2x slower, in the tutorial series I've been writing, I've got a clock system that, as long as you use that, you should be able to sync to any framerate.

I believe Anael won't have any problems with you speaking French on here, I haven't exercised my French knowledge in about 6 years now, so I'll feel hurt and left out wink

Re: Hello and some questions

Hi,

welcome ! hope you find what you need with Maratis smile
About your questions, Nistur responded to some,

- the lighting system is a forward one, 4 lights by sub-mehs (the nearests of the scene)
- bone access is done from c++ right now
- for 2d image in 2d space, you can use ortho camera in the editor, or for something more specific you can configure a 2d mode in c++.

The logic will ALWAYS run at the same speed, even on slower computer, only the drawing will be slow down.
If a game draws at 15 fps, the logic will still run at 60 fps using a timer syncro.
So normally you don't have to worry about it.

About the french, oui si c'est vraiment difficile pour toi en anglais, je pourrais toujours traduire rapidement si le sujet est intéressant pour d'autres personnes. Si tu es à l'aise en anglais, je préfère en anglais smile

Re: Hello and some questions

Ok thanks for answers !

I have a question about licenses, I saw the editor is GPL and the engine is Zlib, what about the player ? If I make a commercial game (on iphone for ex.), will this game be under GPL license as well ? I read the GPL license, but I can't find the answer tongue

Anyway, I'm gonna have a look at the various tutorials now big_smile

Re: Hello and some questions

The iOS project, I believe, is zlib. Anael's very kindly sorted the licenses so that there will be no issues at all with making commercial games. Just the usual "it would be nice to get credit" kind of thing. But other than that, you're free to use it as you want. Just the desktop OS player and editor are covered by GPL.

Re: Hello and some questions

Ok, so if I make an application or game for desktops, will it be under GPL as it is using the player to work ? and what if the application is using plugins I wrote, will these plugins be GPL ?

Thanks, and I'm waiting for your next tutorials btw tongue

Re: Hello and some questions

Unfortunately, I've been incredibly busy with both work and personal life, so the tutorials have sort of taken back seat. I will continue them shortly. I promise. Good to know you like them though smile

Only the executables are GPL. Under the GPL only the bits compiled together have to be GPL, so if you make changes to the player or editor executables, you should re-release it. The game itself doesn't need to be at all. It's compiled separately (if you need code) into a library which links to the zlib components of the engine. If you're releasing the game under Windows, Linux, OS X, and you use the player rather than write a game executable yourself, then you will have to add a GPL license text file along with the game distribution. That's about it. There was some discussion about how I did the packaging work, I get the editor to modify the player executable data, but again, it's not really changing the game at all, if you got into any GPL related issues on that count, all you had to do was change one cpp file and have it freely available for people to download if they wanted.

tl;dr - Nope, no issues as long as you don't change the Maratis executable files smile

Re: Hello and some questions

hello, rather than opening a new thread because i think one question thread is better than lot of question thread.

I have several question about maratis
1. How to compile maratis from SVN? because i'm still a newbie and want to learn more about maratis
2. my friend has a problem with maratis, he opened yo frankie demo and the level or mesh is not loaded, it's just showing entity like camera, light and player entity, when we try to play it, it's giving us blank screen. My friend laptop is core i5 with intel GMA that still support opengl 2. is it because my friend's VGA?
3. can maratis used to create 2D game?

thanks for the answer

Re: Hello and some questions

Hi,
welcome !

so, about your questions :

1 :
- first, you have to download sources from svn :
  you can use a svn client, like tortoiseSVN (windows) or rabitVCS (linux) etc,
  then checkout the sources using the svn path (http://code.google.com/p/maratis/source/checkout)
- to compile using scons you need python and scons installed :
  open a shell, go to "trunk/dev/" and type : "python scons.py"
  after the build, the final product can be found in the "prod/" directory
- or you can compile using visual c++ or xcode from a project file in "trunk/dev/Projects/"

2 :
are other examples working ? can you test the fps example (doesn't need shaders) ?
also check what maratis console shows, if the opengl version is lower than 2.0, try to install latest drivers,
it is also possible that the 3d card (intel ?) doesn't support evolved shaders.

3 :
yes, you can use a camera with "ortho" mode to have real 2d.

Re: Hello and some questions

1. i have python 3.2.3, is this the correct python? and can you explain how to compile using python and scons step by step?
2. the only examples that works is sponza fps and his driver is already upgraded, i think the same like you, maybe his VGA doesn't support evolved shaders

Re: Hello and some questions

maggol wrote:

1. i have python 3.2.3, is this the correct python? and can you explain how to compile using python and scons step by step?
2. the only examples that works is sponza fps and his driver is already upgraded, i think the same like you, maybe his VGA doesn't support evolved shaders


Okay, after trying some analysis, i downloaded a wrong python and after some ideas i did this to compile maratis

1. i right click the scons.py
2. choose edit with IDLE
3. and the choose run module or pressed F5
4. and it's compiling but i have this warning

Python 2.7.3 (default, Apr 10 2012, 23:24:47) [MSC v.1500 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> ================================ RESTART ================================
>>> 
scons: Reading SConscript files ...

scons: warning: No installed VCs
File "D:\Program Files (x86)\Maratis\trunk\dev\SConstruct", line 7, in <module>

scons: warning: No version of Visual Studio compiler found - C/C++ compilers most likely not set correctly
File "D:\Program Files (x86)\Maratis\trunk\dev\SConstruct", line 7, in <module>

scons: warning: VC version 9.0Exp not installed.  C/C++ compilers are most likely not set correctly.
 Installed versions are: []
File "D:\Program Files (x86)\Maratis\trunk\dev\SConstruct", line 27, in <module>
Build in release mode
Using 3rdparty libraries in folder: D:\Program Files (x86)\Maratis\3rdparty
scons: done reading SConscript files.
scons: Building targets ...
cl /Fobuild\win32_i386\release\3rdparty\bullet\BulletCollision\NarrowPhaseCollision\btConvexCast.obj /c "D:\Program Files (x86)\Maratis\3rdparty\bullet

\BulletCollision\NarrowPhaseCollision\btConvexCast.cpp" /TP /nologo /EHsc /nologo /GR /FC /W1 /O2 /Ot /MD /DWIN32 /D_MBCS /DNDEBUG /Ibuild\win32_i386\release\3rdparty

\bullet "/ID:\Program Files (x86)\Maratis\3rdparty\bullet"
scons: *** [build\win32_i386\release\3rdparty\bullet\BulletCollision\NarrowPhaseCollision\btConvexCast.obj] Error 1
scons: building terminated because of errors.

Traceback (most recent call last):
  File "D:\Program Files (x86)\Maratis\trunk\dev\scons.py", line 190, in <module>
    SCons.Script.main()
  File "D:\Program Files (x86)\Maratis\trunk\dev\scons-local-2.0.1\SCons\Script\Main.py", line 1328, in main
    sys.exit(exit_status)
SystemExit: 2
>>> 



my question now is what thing cause this warning? and does my trick to compiling maratis is the same like anael told me?

Re: Hello and some questions

Ok, first of all, I've not been able to compile with python3, I've had to use python2, but you've already figured that much out.

Secondly, scons requires Visual Studio (or, at very least, Visual C++ Express) in order to do the compiling. You can download it for free at:
http://www.microsoft.com/visualstudio/e … pp-express
It would appear that this is probably the problem (No installed VCs)

Re: Hello and some questions

Nistur wrote:

Ok, first of all, I've not been able to compile with python3, I've had to use python2, but you've already figured that much out.

Secondly, scons requires Visual Studio (or, at very least, Visual C++ Express) in order to do the compiling. You can download it for free at:
http://www.microsoft.com/visualstudio/e … pp-express
It would appear that this is probably the problem (No installed VCs)


Thanks Nistur for the help

and maybe because i don't have any VCs it caused my prod/ folder empty

Last edited by maggol (2012-04-17 10:26:55)