Advertisement

Latest Optimization Activity

Hello everyone,

I'm working on a rasterizer that renders triangles in 2d space, all additively (no depth checking). I'm looking for tips on performance optimization of all types. I don't have a lot of experience with OpenCL/memory management etc so I'm very happy to learn about all the ways to impro…

2,831 views
Advertisement
Generating Optimized 2D Art in Unity: Procedural Generation for Stylized and Optimized 2D Foliage

Note: This article was originally published on LinkedIn. If you enjoy my article, please click through and consider sharing on social media and connecting with me!

Last year, I was looking for a side project to work on that would ideally let me start learning about procedural generation in both an …

21,068 views

Well, although I have implemented it “successfully”, some grid-like artefacts are showing up :( Sad life but what can you do. 

Thanks everyone, you have been a big help, conceptually it all works and if someone followed up start to finish of the thread I reckon it would help them a lot as well.…

10,092 views

@Alundra What I have read that checking zeros and not apply the multiplication solves the problem.

10,882 views
Checklist for a Top-Performing Game in 2020+

[Check the original post at Unity Performance Checklist for a Top-Performing Game in 2020+]

In this post you'll get a simplified version of my Unity performance checklist that I've been completing over the years.

Game development is a very complex topic, which makes forgetting action points extremely…

8,825 views

Bregma said:
The SysV ABI is entirely irrelevant to the first point, as that is part of the C (and C++) language definition!

Another part of the C language definition is that the generated code has to behave "as if" it were following the original code. One of the things that means in practice is th…

44,751 views
khawk
November 15, 2019 09:02 PM

Realtime Math v1.1.0 has been released with changes including:

  • Added support for Windows ARM64
  • Added support for VS2019, GCC9, clang7, and Xcode 11
  • Added support for Intel FMA and ARM64 FMA
  • Many optimizations, minor fixes, and cleanup

The quaternion arithmetic for …

3,875 views
khawk
November 15, 2019 09:02 PM

Realtime Math v1.1.0 has been released with changes including:

  • Added support for Windows ARM64
  • Added support for VS2019, GCC9, clang7, and Xcode 11
  • Added support for Intel FMA and ARM64 FMA
  • Many optimizations, minor fixes, and cleanup

The quaternion arithmetic for NE…

2,103 views

Ok, thank you for your statements. From my research (no I'm not sitting here and waiting for people solve my problems ?) I came across some interesting posts that I want to share to all of you. Not just to not have to bookmark them by my own but someone might come across this post and finds them…

5,589 views

1000 tiles is trivial for C#. If the code behave as intended, I wouldn't touch it. However it seems overengineered to me.

8,434 views

Let me explain with a figure.
SLERP provides results between qa and qb on the unit sphere at equal distances (red dots).
LERP provides results between qa and qb on a straight line (blue dots), not on the sphere's surface.
NLERP corrigates this by normalizing the results, so that they are on t…

10,478 views

I am trying to make a map editor with Assembly and C...

 

Everything used to work, but now, I get these errors:

 

cd C:\Editor
wmake -f C:\Editor\Editor.mk -h -e C:\Editor\Editor.exe
wasm SOURCE\MEASM.ASM -i="C:\WATCOM/h" -mf -6r -d1 -w4 -e25 -zq
SOURCE\MEASM.ASM(2): Error! E032: S…
3,393 views
3 Ways Unity Addressables Will Save Your Game

[This post was originally posted with its original formatting at The Gamedev Guru's Blog]

If you've been following me, you will probably know my interest in Unity Addressables. That is for a reason.

Unity Addressables is a powerful Unity package that upgrades the way you and I have been t…

13,873 views
Individual collider for each tile, or composite collider?

Yes, grass covers partially the block, put it on a layer drawn after the "base" one. Remember you can also have hidden layers like "trigger" tiles (when touched they fire an event like ladders creation, bonus items, etc etc). It all depends on what you need on your level, as a rule of thumb crea…

3,484 views
16 minutes ago, Zakwayda said:

You know the specifics of what you have in mind of course, and I'm just speculating here. But, I can imagine cases even in the scenario you present where a texture might be unloaded and then reloaded unnecessarily - due to, for example, a texture bein…

4,187 views
jb-dev
September 07, 2019 02:33 PM
Weekly Updates #60 - UI Refactored

Hey hello there! This week's Weekly Update is kinda small... One of my relative who is just starting college in CS wanted to make a somehow "official" discord server for his college. He needed a bit of help setting up an identity validation system through bots and decided to give him a hand.

2,200 views
On 9/6/2019 at 2:40 AM, 3dmodelerguy said:

While there might be other things I can do to improve that time, I think I got it down to a level that I am more than happy and will save further optimization until and if I really need them.

For a next time, you may want to play …

6,193 views

A thing i like about doing selection each frame is that one can for example change depth or field (far plane - near plane) on the fly and recalculate (within limits) the depths and transition areas for each lod level in between frames. So that the view to the horizon from a mountain top has diff…

4,563 views
Unity Addressables: It's never too big to fit

[This article was originally posted in The Gamedev Guru's Blog]

You are leading a team of a handful of programmers and artists to port a good-looking PS4 VR game to Oculus Quest. You have six months to complete it. Well? What's your first move? Let's bring Unity Addressables to the table.

51,920 views
jb-dev
August 31, 2019 05:58 PM
Weekly Updates #59 - Rendering the raycasting...

And It's you again! Well, it's Saturday ... So it's time to publish a new blog post! This week has been full of small, subtle changes. Although no significant changes have been made, last week was a very busy one nevertheless!

Loading phases

First, let's start with arguably the most …

2,618 views
How to avoid cache misses when data required is far away

I can offer a few thoughts on this:

a) Hold an array of 'hot' data. Since you only care about the position of the target entity and not the full entity data, you could hold an array of entity positions and lookup the target position from that array. Positions are smaller than full-blown enti…

10,635 views
jb-dev
August 24, 2019 08:28 PM
Weekly Updates #58 - Building the level... please wait!

Well, look who's here! it's you again! And yes, this is your favourite Weekly Updates blog! This week has been quite busy in refactoring. I reworked a lot of code to make my title card much more responsive and fluid. It was a technical feat (at least for me) but the results are worth it! …

3,415 views
On 8/17/2019 at 8:57 AM, Alberth said:

Also, "cache-miss" means the data isn't there when it needs it, it does not mean it is doing nothing at that time. The CPU does all kinds of re-ordering instructions streams, predictive branching etc.

Moreover, there is a minimum poss…

5,963 views
How We Optimised Our Scripts in Unity

There are a lot of great articles and tutorials focusing on performance in Unity. This article is not trying to replace them or improve them, this is just a summary of steps that we went through after reading these articles and the steps that helped solve our issues. I strongly recommend to go t…

25,070 views

What are some rough numbers for extremely high end computers using unreal engine 4?

2,231 views
Quote

So I've heard that rendering front-to-back can increase performance due to the z buffer.

Might be worth to note that for the front-to-back opaque objects the order does not have to be perfect. One of the main principles of this optimization is that you populate the d…

2,672 views

So for a very long time now, I have been messing around with Marching Cubes to create a Voxel Engine, however, I am wanting to move onto Dual Contouring since it has easier support for things such as Multiple Materials, LOD, and sharp features. So I am currently stuck on a crossroads between crea…

3,061 views
Realtime raytracing on a 2014 GPU

It also seems like using some kind of temporal averaging is the key to trying to get more effective sampling out of limited hardware resources.

In addition to the SVGF that was already mentioned, Nvidia did something similar in their 2-layer Deep G-Buffers.

14,246 views

It depends on several things and combining multiple shaders into one can be worse in some cases. In your case, if you want to output into different resolutions, it is likely better to have separate shaders.

Combining multiple shaders into one will be helpful if you are bottlenecked by textur…

2,566 views
ryan20fun
May 06, 2019 12:30 PM
Toy on a Mission UE4 Remix - NewDirection - N1

Greetings.

Notable Stuff done since last entry:
  • I have replaced the old WIP options widget with a new WIP options widget that uses tabs like a browser
  • Set custom built UE levels to not be packaged with the game, Instead I am using the UserMap system (json file that a level is buil…
3,057 views
jb-dev
March 23, 2019 01:46 PM
Weekly Updates #37 - Breakin' the Law

Hey, nice to see you again, and welcome the newest entry in your favourite weekly update blog!

Last week had quite the development, not gonna lie.

There was a lot of brainstorming, modelling and coding.  Needless to say that I got a lot of things to say, so let's get right to it!

LOD…
2,514 views
jb-dev
March 09, 2019 04:34 PM
Weekly Updates #35 - Can You See Me?

Well hello there! And welcome to this new installment of your favourite Weekly Update blog!

I won't lie: this week wasn't as productive as I wanted.

Although I was able to still add some new things in the game taking care of my niece and nephew took most of my time (especially earlier th…

4,602 views
jb-dev
March 02, 2019 03:10 PM
Weekly Updates #34 - Levels of details

Why hello there! Welcome to this new installment of your favourite blog!

To be honest with you, this one isn't supposed to be noticeable (at least for the first part). To put it simply, this week was really a modelling one. Most of the time I worked on different LOD models of most of my mesh…

3,581 views
Greedy Goblin
January 06, 2019 12:24 PM
Revisiting Terrain Collisions

It's been a while since my last blog entry as I haven't had much time to work on my game due to work, chores, Christmas and... err... Red Dead Redemption 2 ?.  I have only managed to do little bits here and there over the past couple of months but decided to spend some time revisiting my codebas…

4,057 views
Hodgman
October 19, 2018 02:45 AM
OOP is dead, long live OOP
edit:

Seeing this has been linked outside of game-development circles: "ECS" (this wikipedia page is garbage, btw -- it conflates EC-frameworks and ECS-frameworks, which aren't the same...) is a faux-pattern circulated within game-dev communities, which is basically a version of the relational …

162,428 views
dillyframe
August 15, 2018 01:03 PM
First updates in crazy Bunny Minesweeper

It's been almost a week since release, but we manage to do several important updates to the game and ready to give more.

So what about updates?

there are 4 of them and all of them are small preparatory step to the next big one which is Customization.

What we have now that we didn't ha…
2,376 views
Slyxsith
August 01, 2018 08:07 PM
Three Steps Forward - Stress Testing

What a great week it's been on the development front. Completed the coding and testing of the Master/Login servers, built the standalone client, added in the new chat services we have been working on... The list goes on. But, as with anything great, you take the good with the bad. I messed up th…

2,911 views
GRASBOCK WindyOrange
June 27, 2018 09:19 PM
#2 New System Works

I finally got the new system working. I have never made that many mistakes in an algorithm at once, which explains why it took so long for me to post an update.

Anyway. Now I can run more than 10000 Humans at once (however only random walking). The World has multiple Noisemaps overlapping ea…

2,292 views
marcus_kay
February 09, 2018 01:05 PM
Mobile Game Optimization Tools 2018 – Top 23 ASO Tools Reviewed
Which ASO Tools are Right for Your Game?

When I started doing app store optimization (ASO) for my games, I was so overwhelmed by the numerous ASO tools available in the market…

App AnnieMobile ActionMeattiSensor TowerApp RadarPriori DataASOdeskSearchmanTheToolKeyword To…

4,728 views
Awoken
February 01, 2018 10:44 PM
More Adventures in Robust Coding

Hello GameDev, 

This entry is going to be a big one for me, and it's going to cover a lot.  What I plan to cover on my recent development journey is the following:

1 - Goal of this Blog entry.

2 - Lessons learned using Node.js for development and testing as opposed to Chrome console.…

6,527 views
Ruslan Sibgatullin
November 09, 2017 08:12 PM
How I halved apk size

Originally posted on Medium

You coded your game so hard for several months (or even years), your artist made a lot of high-quality assets, and the game is finally ready to be launched. Congratulation! You did a great job. Now take a look at the apk size and be prepared to be scared. What is …

3,745 views
ACTNS
June 24, 2017 05:31 AM
Battle of Millenia Update #3

Didn't do much today mainly messed with the player hub and Optimized the game code to where I can hold so far 60 AIs at once! I will be working on the Ai's code more tomorrow and will show a video seeing how much AI's I can fit in one battlefield! 

 

Also for those of yall who are intere…

2,360 views
Advertisement
Advertisement