Yep, all Lua big_smile
Since 0.2 tongue

Link: https://github.com/Sponk/NeoEditor/blob … tInput.lua
That is the default input method. Does need mouse handling though. That's still done in C++ code.

I implemented basic input profiles. They're basically Lua plugins which register an input update function and get access to your current editor view. You can select your preferred input method in the configuration dialog.

Vegas: You should now be able to use Neo properly big_smile

Akira_san: Yes, this is possible to make using an input plugin. I will definitely include it in Neo to select in the config dialog.

However, I will write a small howto on creating plugins. It's quite easy but needs explanation. Then you can make your very own input profile based on Maratis, Blender or any other 3D application.

The daily build is now online. Have fun with it!

Yeah, a "Set to default" is really needed.

About the font size: I think it should be big enough for everyone to read. I will think about if it is neccessary to modify this.

Vegas: What keys do you use instead of WASD? I need the info for the input plugin

I implemented basic theme settings.
You can now change the theme colors as well as the scheme.

Vegas: This should fix your color-gradient issue smile

It's already online as a daily build.
Have fun!

Thank you guys for testing!

Akira_san: I messed up the path saving. It should work better in one of the next daily builds.

ant0n: Yes, it is possible. I was already thinking about that but did not come around to think about how to do this in a clean fashion. There are some other (serious) usability problems that need to be addressed first.

Vegas: The controls are currently hardcoded to WASD. The plan is to have easy to change profiles written in Lua to allow a more in depth control. It's on my todo list big_smile

Currently you can't save any editor related settings. I wanted to do that in favour of a settings dialog where you can control all aspects of the editor i.e. input profile, theme etc.

The camera preview should be quite easy to do. Just render the current scene with the selected camera in a viewport in one corner of the window.

You can find the exact todo list for the next release here: https://github.com/Sponk/NeoEditor/milestones/0.4

Thank you very much for your time! I appreciate it!

The time has come to release the third version of Neo!

Introducing: Neo 0.3!

There are quite a few new features. Check them out!
Link: http://scary-squid.de/wordpress/?p=211

Have fun with it!

I fixed the scene reloading issue. Was an one liner.

I could not reproduce the crash either. Can't be fixed without reproducing it.

I ported the YoFrankie demo to have something to play around with.

You can find it here: http://scary-squid.de/wordpress/?page_id=90
Have fun!

It's online now.

Have fun with it big_smile

I implemented the looping option by the way. If looping is disabled the particle system emits one blast of particles at a time. You have to trigger it by setting "Emitting" to true. After the particles are created "Emitting" will be set to false and you can now set it to true again to generate another bulk of particles.

I hope it's understandable how it works big_smile

I will upload these changes later today as a daily build.

Fixed it. The behavior now checks if the texture has changed and reloads it if needed.

The behavior save feature is now integrated into the prefab plugin. Please download the current daily version and test it to spot possible mistakes.

I already thought about some sort of loop option but did not get around doing it yet.

I'm thinking about moving this discussion here over to my own webspace since we discuss mostly non-Maratis related things. I did not setup the login plugin for wordpress yet but it will be ready soon (i.e. tomorrow big_smile).

What I in fact did set up is a small asset catalogue.
I uploaded a test prefab which you can find here: http://scary-squid.de/wordpress/?wpcpro … oke-prefab

It only works with the current daily version and newer.

Have fun testing big_smile

During runtime you can use

setBehaviorVariable(object, 0, "ParticlesNumber", 0)

to deactivate the particle system. I do not want to make an API call in the engine itself since the particle system code is in a modular behavior which is not in the core engine. It should be treated as any other behavior you load in your native game plugin.

If we had a bool variable the code would look very similar:

setBehaviorVariable(object, 0, "Active", false)

Colors are currently not possible since I use the color attribute array to copy other per particle data to the GPU. I have to think about it some more.

Fade out will be implemented. No problems there. Same for rotation.

Premade particle systems should be made using the integrated prefab feature. I'm currently writing code to improve behavior handling (and plugin debugging). Then you can easily package all textures and prefab files in a zip and distribute them.

I introduced multithreading for particle systems by the way. That way they are basically for free on the CPU side what means that you can simulate more particles with the same framerate. Keep in mind that it still is limited by your graphics hardware.

The next daily version will be uploaded as soon as the prefab plugin supports particle systems.

You already can deactivate the particle system. Simply set "ParticlesNumber" to 0 and not particles will be emitted and all logic will be skipped. "isActive" would not do anything else. "isVisible" could be used together with occlusion culling etc. but then you would need a parent that is at least the size of the area where particles can land.

There are some other things I want to do on the particle system side like multithreading or fade out.

Should those things land in 0.3 or should we introduce them in 0.4?

You need to update your player with the menu option everytime you update Neo. Just click "Project->Update Player" and you should be fine.

Well, Lua docs for C++ bindings can not be automated. I was already looking for a solution and did not find one.
The C++ docs are created using Doxygen.

Thanks for pointing out the damaged zip file. It seems that my build server crashed while uploading.
(That's what you get when you use Windows for something like this tongue)

I reuploaded everything. It should work now.
Have fun!

I just closed the last "enhancement" issue on GitHub.
That means that now begins the phase of testing before the new 0.3 release.

I wrote some documentation about the new Lua API functions btw.
It is not yet completed but you might still be interested: http://scary-squid.de/wordpress/?wpwtds … -lua-api-2

Have fun!

Whoops, I forgot to return the from the update when it detects that you changed the number of particles.
Already fixed big_smile

Akira_san: Yeah, I was thinking about that. That would then also be used in the LuaScript behavior.

I'm currently uploading yet another version that (hopefully) won't have any other particle related bugs tongue
You'll be able to grab it in 10 minutes or so.

Have fun with it big_smile

Hey Vegas!

Thank you for reporting. I could reproduce it on XP as well. It seems that the particle count does not initialize correctly and goes through the roof sometimes leading to an allocation way too big for the heap.

I fixed it and the new version is now online.
I hope this one works big_smile

BTW: The editor crashes sometimes at exit in virtualbox. Does it happen on native Windows too?

I integrated particle systems into the editor.
You can download the current daily build and try it!

News: http://scary-squid.de/wordpress/?p=138

If something does not work simply tell me big_smile

Have fun!

Well, I _should_ write docs. But you know, I always find something more interesting to do big_smile

I will upload a first set of Android publishing binaries as soon as I get all graphics features to work with OpenGLES. The particle system does not render correctly under some circumstances.
But that's quite off-topic here tongue

Sponk

Well, I implemented most of those creation/deletion functions in my own repository.
Maybe this helps to add them faster to the engine since they are already tested to some degree.

File: https://github.com/Sponk/NeoEditor/blob … Script.cpp

Sponk

Hey Akira_san!

I don't think you can do that with Maratis right now without creating a C++ game plugin or modifying the engine.
This feature is quite essential so it _should_ be included by default (just like functions to load meshes or add lights etc.).

Sponk

I can't reproduce this (Windows 7 and Linux).
What else did you do?

I just uploaded an initial implementation of the skybox rendering feature.
It needs some testing so you can download the current daily build and try it if you want.

The build can be found on the download page: http://scary-squid.de/wordpress/?page_id=83

You can give any camera a skybox in the editor or in any script.

In Lua you have to call:

loadCameraSkybox(camera, pathToSkybox)

pathToSkybox has to be a directory containing {"negx.jpg", "negy.jpg", "negz.jpg", "posx.jpg", "posy.jpg", "posz.jpg"}
They will be loaded and displayed if everything is successful.

Have fun!