Flix - Procedural training and Movie making

Remind me again, which UI framework are you using? It was something other than Dear ImGui right?

Nuklear - GitHub - dlannan/defold-nuklear
Ive made this initial extension for it. It doesnt do any hw accel (it can, but Im using CPU based buffer rendering). The main reason I use it is that I had problems with imGui running drawing commands in html. I think it has some nicer features, but its also missing some things imgui has (which Im putting in the extension).

3 Likes

Little update. Have taken a little longer due to the addition of embedding a web server so I can interrogate the tiny-ecs entities while running. Sample screeny.

WIll make a tiny-ecs extension project sometime soon in case people are interested in it.

4 Likes

So it’s something you can use to make an in-game cutscene?

Yeah. sorta :slight_smile: You will be able to make movies with it for sure. But its a little more weird, because you can develop movie like scripts (Acts, Scenes etc) but with branching and event based control. So another output will be an exe (this wont be available on mobile, it will have a runtime server that you will publish to), and run the exe, and have people interact with the movie in a number of forms (key input, movement, voice etc) - these are stretch goals btw, but features I have implemented previously in ptt’s.

Hope that makes sense. For budding movie creators, and maybe youtube and similar content creators wanting to develop a script with camera controls, entity control and script movie flow for scenes, it will be a handy prototyping tool (I hope! :slight_smile: ). Will be getting it in the hands of some script writers I know.

Flix will also be able to output an actual script (in movie script formats) with the video. So as to make peoples potential marketing of their movie ideas much easier too. Its a very niche space.

This will be the free application. The commercial one I will be selling to procedural training companies that have a need for a tool like this to be able to train people in tasks. Mostly in safety, hazard, mining, and mill type training applications.

Another update. Lots done on the ecs side, with entity control and management almost complete. The Acts and Director should be functional tomorrow, so I should be able to make my first movie on the weekend (might put in some nicer assets :slight_smile: ).


The debugger has been so dang handy, not sure why I didnt do this in other projects :slight_smile:
Anim is in, but still not rigged (time… will get to it soon). Really want to be able to run Acts, Scenes…and animate commands on objects this weekend. will see. I suspect that might not happen till midweek next week, usually need to do family things over weekend :slight_smile:

Very happy with progress tho. And I think people will like the ecs extension once I package that up.
Note: I should point out the Tiny ECS debugger is a live tool. It updates roughly every second, and allows editing and monitoring of the ecs world - and I really should get an artist to make it look nice once its ready for consumption :slight_smile:

5 Likes

Ok. Very quick update. Close to making first movie.
Added @d954mas and @astrochili excellent illumination and new illumination package:
< GitHub - astrochili/defold-illumination: Ready-to-use forward shading lighting extension for Defold >
< GitHub - d954mas/defold-illumination-new >
This means lights and shadows are going to be a little better (still integrating with my pbr).


And some night lights. Spot and point.

Lots to fix/improve. Will hopefully post a vid tomorrow of a many number of features. :slight_smile:

8 Likes

This must be the one and only M1! We have one in Cracow :grin:

1 Like

This is impressive!

1 Like

I need to cred the free 3D models Im using too (there will be attrib in the app)

Really quite awesome low poly models. They needed some treatment in blender (scaling, and other things) but otherwise quite excellent. There will be many of these available in flix (Im removing the commercial ones).

Also looking at replacing the shadow method. Probably will implement my own shadows solve for large volumes. For people interested in this is a great reference:
< GitHub - Flix01/Tiny-OpenGL-Shadow-Mapping-Examples: Compact OpenGL Shadow Mapping Examples in a single compilation unit >

2 Likes

Uggh. Side tracked. While looking for some old file on the numerous usb drives I have I decided, I need to catalog my drives. And I cant find any decent cataloger that is simple and just indexes the filenames + size + folder, assigns to a drive/catalog name then is searchable (easily).

I decided, Im going to make one. Shouldnt be more than a day. Not sure I’ll use defold, although I added a sqlitedb extension which is what I want to use, and I want cross platform too. Not sure nuklear or imgui will suit tho.

I’ll finish off what Im doing today (making some vids etc) then get that sorted and start the indexing of the drives. Its annoying not being able to file a file you know you have somewhere :slight_smile:

< update > strike that. just found VVV and it looks pretty good. moving on. < Virtual Volumes View >

1 Like

Videos not done. Too much other things happening atm. It would be nice to lock myself away in a room for a month… then I could get things done :slight_smile:


The editor is going well, timeline, acts and scene editing all nice. aabb box hitting for object selection, movement, rotation, and more.

  • Added shortcuts for move and rotation (t and r respectively).
  • Adding orbit shortcut too.
  • Load/Save movie nodes all working (can save cmds and objs and acts)
  • Many improvements in gltf and glb loading (animation is sorta in - needs some work)
  • The tiny ecs back end… I need to cleanup and create a native extension for. Its been awesome. This will be done today/weekend (I hope)
  • Geomextensions is much improved. This coupled with gltf, will be a major upgrade for these extensions when I push them back up (maybe weekend).

Will be working on some other bits this weekend (some crypto stuff for a friend). Will be back to post some videos on Monday. Or thats the plan… will see. :slight_smile:

7 Likes

I wanted to update. Again, life intervenes :slight_smile: New puppy… job… and many other elements taking my time away from this. I hope to get some more done over the coming weeks. But its going to be slow now. Have also been updating Tiny ECS and defold-nuklear for other projects (I have two games to try and spend some time on as well).

Some notes.

  • The animation is where I really want to finish, as well as the act construction.
  • The lighting and shadows I might put into a separate project so it can be made a standalone extension/dependency for people to use. The animation will be like this too, but its a little more complicated to extract from flix atm.
  • Tiny ECS html is quite extensive now but I have removed the camera effects for flix (again because of render complications) but I have left it in the public project example.

So next major update should be animation and act commands/timelines working with the ability to record and playback scenes.

6 Likes

Ok. Runtime loading of animations (via ozz animation) is working. Will be posting an ozz-animation defold extension soon. This will allow for:

  • animation blend trees
  • ik management at runtime
  • property and event binding to animation
  • gpu skinning ( to be added - their sample uses ogl, but would like to use vulkan. dunno).
5 Likes

That happened a little quicker than expected. Working ozz-animation lib/system that is a good start.
Will add the IK and some simple blendtrees - prob a couple of days, then I can get that back into Flix.
https://forum.defold.com/t/ozz-animation-in-defold/78137
This will also get use in other projects Im using atm… and there will be a 3D anim tool coming as well. :slight_smile:

5 Likes

What you’re doing here is amazing :heart_eyes:

1 Like

Thanks mate. Appreciate that coming from someone who is doing amazing stuff with Defold too. (better art too! :slight_smile: ).

2 Likes

Things have changed. I dont expect to be releasing Flix using Defold now. There are a number of reasons for this, but the main one being the large amount of extension code I was writing to support runtime capabilities. This dev blog is unlikely to get further updates. Sorry.

1 Like

Sounds like you had to make a tough and stressful decision. Hope you will get Flix released and swapping out Defold goes well. Will that be to your own code or some other product?

The code is still mostly all lua code from the original Defold code. Since I wrote many lua extensions that were essentially wrappers for clibs, porting it to my own luajit system was pretty simple.
I dont really want to promote or link to anything Im building here, since that is not appropriate. But it has opened up some freedoms (specifically for runtime asset handling) which means Flix is a little more flexible. This is not to detract from Defold, it just isnt really the tool for this sort of application.

2 Likes