🎉 Celebrating 25 Years of GameDev.net! 🎉
Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!
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…
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 …
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.…
@Alundra What I have read that checking zeros and not apply the multiplication solves the problem.
[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…
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…
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 …
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…
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…
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…
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…
[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…
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…
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 be…
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.
…
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 pla…
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…
[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.
…
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 phasesFirst, let's start with arguably the most…
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…
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!…
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…
What are some rough numbers for extremely high end computers using unreal engine 4?
QuoteSo 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…
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…
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.
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…
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 bui…
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!
LO…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…
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…
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…
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 …
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 h…
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…
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…
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 Annie, Mobile Action, Meatti, Sensor Tower, App Radar, Priori Data, ASOdesk, Searchman, TheTool, Keyword To…
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.…
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 …
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…