Teaser Fridays and Roadmap talks

Hello!
During todays hackday here at the office, I decided to take a look at the previous restriction of only being able to have 16384 sprites per collection. It was due to another optimization regarding index buffers that we got the new behavior. However, that check can be dynamic in the engine, so I tested this today, and it works fine. This allows for a user specified number larger than 16384. Note that the maximum number of gameobjects per collection is still 32767!

Here is another example, using the vanilla engine (1.2.127) where I create 16000 bunnies in each collection, and thus push the limits some more. The current threshold on my iMAC is ~50000 bunnies for 60fps, after that it starts to drop:

My code should be cleaned up, and I also need to talk to @britzl on the subject of supporting it for all the cases in the Bunnymark test.

16 Likes

Hi!

Last hackday I continued to work on fixing some memory leaks and in order to get quick feedback I decided to try and improve the in-engine profiler view.

The current one flickers quite a lot making it hard to find out what is happening.

I started with hacking some fixes but decided a bit of refactoring was in order so I could make more intelligent decisions on what to show and what to filter out.

Iā€™m pretty happy with the results I got so far and there are a few improvements Iā€™d like to get in place which should be fairly easy with the refactored code.

Still some work to do, but progress has been made.

13 Likes

Iā€™ve updated my Bunnymark project with a test that uses multiple collections to spawn bunnies. It starts to drop below 60 FPS when it starts to go above 52-53k bunnies:

8 Likes

After having finished the ā€œAstronaut walkingā€ beginnerā€™s tutorial (check it out in the editor), I am preparing a sample project that showcases how you could set up a large game world for an RPG (for instance). The sample is 3x3 screens but can easily be much, much larger.

It will soon be available from inside the editor (and Github).

12 Likes

ā€¦also, weā€™re preparing some platformer assets, which will turn into something. Tutorial? Sample? Who knows! Soon in an editor near you, in any case.

runningBean

7 Likes

Oh man I would love to be able to work directly with animation from afterfx.

I know Facebook has a library for that.

3 Likes

Been doing some weekend hacking on the in game profiler - still not ready for shipping but some neat features added:

  • Better filtering/ordering do avoid reduce flickering
  • Show timings of Lua functions
  • Show frame times excluding VSync wait (optional)
  • Minimize profiler view (only frame times / status)
  • Pause/resume profiling (show last sampled frame)
  • Sample only if next frame is longer than the current displayed frame
  • Profile recording with ability to review recorded frames

Video of it in action here:

All this is experimental and nothing is guaranteed to be included in a future Defold release, but I will try my best to get all of it in at some point.

12 Likes

Welcome back to the Teaser Friday!

Today I got my test app for Google Play Services up and running.
My task was more specifically to add a way to subscribe to the onActivityResult on Android.
And, as a way to test that, I figured I could create an extension using the GPGS C++ api.

The onActivityResult hook will be added in the next release, so you can use it for your cool things.

As for the GPGS extension, weā€™ll discuss internally when and how we will proceed making it actually usable. It will be very soon at least, in some form.

Currently it supports Android only. The executable grows from 2654696 bytes to 5079804 bytes which is pretty hefty. Itā€™s double the size! I think thereā€™s an api for iOS too (which is even bigger), but my focus was to get the Android version first.

Have a nice friday folks!

12 Likes

I am not sure, but I think android native version (JARs) would be smaller and more modular.

I think itā€™s a possibility worth looking into.

Iā€™m not sure what you mean by ā€œmore modularā€ though?

I mean that you can include some *.jarā€™s into the build and exlude others that you donā€™t need.
https://developers.google.com/android/guides/setup

2 Likes

What about proguard. Do you used it, when build for android. It can reduce size very good.

1 Like

Currently, we do not use it. I think it might be a good addition later on for native extensions.

6 Likes

Time for another teaser friday, this time with some simple physics joints in Box2D:

24 Likes

Long time, no tease! Been tampering a bit with design for align/distribute features. Bear in mind that itā€™s a prototype, and therefore i) not done, and ii) missing tooltips and such. Also, this makes it a perfect time to gather feedbackā€”any and all is welcome.

20 Likes

Since the team is out of office tomorrow, I too will post the teaser today.

In the next release, youā€™ll be able to set your Android bundle as ā€œdebuggableā€ directly from the game.project file. This will help e.g. when retrieving files from your device, and also when debugging the app. Hereā€™s a screenshot of Googleā€™s GAPID in action:

17 Likes

First teaser for me, yay!

I fiddled a bit with adding Renderdoc support to Defold to ease with graphics debugging and profiling by way of inspecting textures, draw calls and whatnot.

19 Likes

And yet another teaser! Hot-reloading of tile maps is now supported, should be shipped in coming release next week.

20 Likes

We just had a conversation in the telegram chat about physics in Defold: a lot of people looking forward to the joints.
I asked them to provide their cases (usually itā€™s about porting flash games) here on the forum, but not sure that somebody will come here =) (you know this shy RU communityā€¦)

Anyway, this topic is one of my favorite on the forum, you are awesome, guys!
I canā€™t wait to see your teasers in a live-build!

10 Likes

Will you have time to make it until next Ludum Dare? :sunglasses:

1 Like