BDX beta is out, and ready to use.

Thanks for the work you put into this, SolarLune.

NP. Thanks to you as well - you’ve done a lot with the engine. There’s just been a few of us contributing to the engine over the time that it’s been available publicly, and it’s gotten over 450 commits in under a year, which is pretty crazy! Hopefully development will continue at a nice pace, as necessary.

Well, not counting reverts and bug fixes it was a good year indeed. For next year I’m hoping to work on basic armatures for FK and some basic physics constraints, if you or anyone else doesn’t beat me to it. This, only if Phong shading is available. I don’t think it makes much sense to add such 3D features if there isn’t some descent 3D shading yet.

Nonetheless without all of those features BDX still presents a good platform to develop smaller/simpler games. I’m currently working on a small 2D platform demo. When it’s finished I hope to make some tutorials about the workings of it. It will take some time, since I’m working during the day, and most of the time I’m just to tired to work on projects.

Thanks for all your additions too, SolarLune.

No problem! I also would like to do more stuff with shading. I feel like per-pixel fragment shading shouldn’t be too difficult to get up and running, but I’m not sure - I’ve gotta take another look at it. Once we get that, adding other kinds of shading doesn’t seem too difficult. Adding shadows would also be a nice thing to have - it seems like LibGDX’s default shader has some basic support for shadows, but I think it might be just orthogonal directional shadows…? Not sure. Multiple gamepad support and viewports for split-screen multiplayer or picture-in-picture would also be nice.

And yeah, I’m also working and have my own projects to work on, too, so progress on most stuff’s gonna be slow, haha.

YO!

It’s been quite awhile, but BDX has gotten an update!

  • Per-pixel sun, point, and spot lighting. As it was before, you can simply create the lights in Blender to have them show up in-game, or spawn them during play.
  • Ability to turn off per-pixel lighting for lower-spec targeted platforms and devices.
  • Improvements to the profiler.
  • GameObjects can now switch the materials used on their mesh. You can specify the name of a material available in the scene in Blender, or you can directly provide a LibGDX material to use, in case you have one custom-made.
  • Various fixes and Quality-Of-Life improvements.

Check it out!

Hey great proect,thank you guys for your efforts,I will give it a try (even if I’m not entirely sure how it works)
Also do you need simple games or demos that you can test using bdx ,can it support armatures ?

(PS Goran link your bdx tutorials to this threat so it would be easier for people who are interest to learn how to use it)

I guess its still missing armatures?

You’re welcome!

Yep, no armatures yet. That’d be one of the next things that we could stand to add in.

Sure, simple games or demos that we could test with BDX would be nice. We could host them somewhere and allow for people to test them out online to see a finished, basic game in BDX, with the source code available. I’d think that would be useful, anyway.

Wow, I just find BDX and the concept is really really nice!!

I just installed it and tested a minute and it’s great tha you don’t need to configure a cumbersome environment before, and then exporting .blend to somewhat format, etc…

Congrats Goran and SolarLune!!

Only a couple of silly questions:

if you didn’t implemented some feature on your own BDX engine but LibGDX is capable of doing it, its feasible/easy to call LibGDX?
Are you planning to keep it growing?

  1. Yeah, it’s feasible and possible to call LibGDX functions for what you want. You might have to edit the engine a bit to put things where you want them (i.e. draw something after everything else, in code, apart from using an overlay scene).

  2. I believe Goran’s happy with it as it is, as it can be used to make games, even now. So, I don’t know if he’s motivated to work on the engine much to improve it or add new features.

I, personally, want to see some more graphical improvements, though, so yeah, I’m planning on continuing with it.

Keep@it, its great work,

Do you think from what you have learned you may be able to get the android blender player running?

Nah, sorry. I don’t really have any interest in working on the vanilla BGE, and BDX already supports Android. Also, the stuff I’ve learned is separate from Blender’s source-code, so I wouldn’t even really know where to start.

Thanks, though!

@SolarLune oh ok,I will still see if I can create something without armatures (I might need to go with 2D sprites for animation even if I never tried it before ).

Anyway good luck and stay motivated :slight_smile:

I had a couple of hours to play a bit with the engine and I tried to make a clone of flappy bird using the assets of this blender one:


I only started making it to play with the engine and see its posibilities (and mines xD) and I had two problems:

1- If I put the bird as static phisics and the floor also as static phisics, I have no collision detection.
2- It runs ultraslow and I can’t see why :frowning: profiler tells that 90% is “out” stuff. If I remove my java code is happening the same. The scene is only 4k tris. I don’t know if it’s me or if it can be a bug of the engine.

I uploaded the project here: https://www.dropbox.com/s/383o0jrxlqtsl2a/birdo.tar.gz?dl=0

I would be great if someone see why is running so slow!

Yo!

  1. Under the hood, BDX uses the same physics engine as Blender, so it works the same - not every collision type can interact with every other collision type. I made a table in the documentation to show which objects can collide with each other - hope it’s useful.

  2. The profiler headings are a bit cryptic, but I believe “Outside” means the same as in the BGE - that basically, this is how much CPU processes are left over after BDX runs. So having an ultra high “Outside” value is fine, because that means that most of the CPU isn’t going to the game because it doesn’t need it. As for your game, it’s pretty cool. It runs at 60 FPS for me, so I don’t know why it’s slow for you - is it running at 60 FPS?

Wow!

  1. thanks! my fault :stuck_out_tongue:

  2. Ok, I tested it in a shitty laptop (core 2 duo 4gb) but… anyway, the blender version of the game runs fine and the one that I did run slow as hell (around 6fps). I also built an .apk and tested it in a Motorola Moto G 2014 and I’m getting only 5 fps aprox. Something weird happens here. (can be my fault agant :P)

  • Hm, strange. What’s the profiler say? Check your task manager, as well.

  • It might be that you have to let Java work through your firewall. Usually, when you start BDX and Java, I believe you get asked to make an exception in the firewall for the JRE to work with.

  • BDX just supports those physics types listed - you have your Bird object set to Character. Not sure what effect that might have.

  • Does the packaged demo scene (with Sacky) work fine for you?

  • Do you recall at what point your game started to slow down, or did you not see the FPS earlier? Was it always slow for you?

  • What version of BDX are you using? What laptop do you have? Try disabling advanced lighting using the “Bdx.display” object, and reducing the light count there, as well.


As for the game, I would recommend starting from scratch to troubleshoot - delete everything, and see how the FPS goes. If / when the FPS goes up, start undoing until you find what’s slowing the game down. It’s best to profile the game and see how the FPS and things are going as you’re making it. Otherwise, you might miss the cause of your issues.

Great!

It’s something related to lighting. If I put all the materials to shadeless, It runs fine both laptop/Motorola. I’ll try with this Bdx.display thing you tell me.
The laptop is an old mac from 2008, with… Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller xD I guess that this is the problem.
I run last BDX 0.2.3 in Blender 2.76 on Linux Mint.

Edit: With Bdx.Display.advancedLighting(false); in BdxApp.java create function it runs fast as hell!!
Thanks!!

I’ll try to finish it when I’ll have a bit more of time and If you want you can use it as an example/demo. It’s always nice to have a couple of examples to engage people to use a tool.

Cool, great to hear!

A note - you geeeeeeenerally shouldn’t mess with BDXApp.java. It’s automatically generated / modified by BDX, so you should basically just modify your own .java files (i.e. ones for components or GameObjects).

And cool, yeah! Always good to have some examples hanging around in places.

Yo!

BDX got updated to version 0.2.4. Check it out!

No armature support just yet, but we’re getting some new stuff in there, nonetheless.


Here’s a concise change-log for this latest release:

  • Saving the meshes from Blender has been optimized, which can make the starting process a ton faster.
  • BDX can now render to a depth texture for depth-based 2D screen shaders. All you have to do is use the depthTexture uniform in your shader; if you don’t use it, BDX won’t render to it.
  • Some additional packaged screen shaders have been included: Outline, Invert, and Depth-Of-Field.
  • You can now color, tint, and otherwise alter individual materials on a GameObject.
  • Camera functions have been added to allow for view changes (i.e. changing the viewport width of the camera view).
  • Various bug-fixes.

Anyway, thanks for reading!