How to Improve a Games Performance to ‘Perfection’ | 10 Tips | Unity3D

How to Improve a Games Performance to ‘Perfection’ | 10 Tips | Unity3D

YagmanX

2 года назад

191,315 Просмотров

Ссылки и html тэги не поддерживаются


Комментарии:

Adrian K
Adrian K - 16.10.2023 23:42

Stopped watching when you started burping

Ответить
Mr.SunShine Jr.
Mr.SunShine Jr. - 11.10.2023 23:02

I don't know what I'm doing when it comes to programming(and anything else) but this video was sooo good. You've structured and inform everything in a super easy a digest way. You go sister!

Ответить
Nurd
Nurd - 09.10.2023 09:24

I know this is an older video but if you still read the comments, the "Optimising Garbage Collection in Unity (Update and Coroutine)" link is outdated and doesn't work anymore, just so you know.

Ответить
BeeMan
BeeMan - 30.09.2023 12:40

What do you recommend? Make the game first then optimize it or ahould be be concerned about performance simce day one?

Ответить
Matheus Santana
Matheus Santana - 22.09.2023 18:24

But if i delete the cameras after use them, will they still rendering things? Do you know anything about that?

Ответить
cyborax
cyborax - 18.09.2023 09:02

Thank you for this Video!

Ответить
Apophis Software
Apophis Software - 17.08.2023 16:16

What I would add, and I know that my comment is a couple of years late but... One of the things I learned in optimizing our games was 1) use object pooling; and 2) never let the system do it's own Garbage Collection. Managed code, especially on non-pc platforms, will wait until the absolute last minute and then Collect. This invariably results in it dropping fps down to about 5fps for a second or two (dependent on the amount of garbage that the game makes). What you can do instead - put your own garbage collector (GC code) into a coroutine, and then adjust the timing to strike the best balance. (To anyone new, you don't want to run you GC every frame, because it has its own overhead; hence finding the optimal balance.) This is especially important if you destroy a lot of objects, especially ones that cannot be pooled. Like destructable scene objects, those wouldn't be pooled.
Hope this helps out!

Ответить
TYNEPUNK
TYNEPUNK - 05.08.2023 01:53

great optimisation tips and well described. cheers.

Ответить
noseboost
noseboost - 29.07.2023 21:42

Imagine if a single remnant II developer watched this vid

Ответить
V037
V037 - 27.07.2023 12:15

Btw if you mark thing as static you don't need to worry about vertices

Ответить
V037
V037 - 27.07.2023 12:08

Girl... Can I marry u?

Ответить
Arif Candra Prasetya
Arif Candra Prasetya - 25.07.2023 14:08

I'm using your videos as a citation on my thesis :))

Ответить
Azrhyga
Azrhyga - 24.07.2023 23:13

Awesome video showing the tips than you used for optimize your game!! Thanks for sharing it!!
Also good luck working on "Perfection" new content!!

Ответить
تركي سعود 2007
تركي سعود 2007 - 30.06.2023 09:59

i work in blender 3 years ago

Ответить
Isteyak
Isteyak - 21.06.2023 18:02

She's too much cute ❤

Ответить
Harry Olive
Harry Olive - 02.06.2023 15:28

The most valuable performance tip is to avoid using Unity. After 10 years of experience in Unity development, I have no sympathy for Unity3D that provide incomplete and poorly optimized functions, keeping developers in their catch hopeful that things will improve eventually. Sorry for the hard point of view. I know I would not receive a heart for this comment..

Ответить
Ori
Ori - 26.05.2023 04:19

Awesome video! Thanks!
I see many people have commented, but my 2 cents are: do NOT check for null on update or any frequent called function, as it's heavy on the machine. Instead, it's better to use an extra bool variable to keep track if the nullable variable is null or not 🙂

Ответить
sc2 sc2
sc2 sc2 - 24.05.2023 08:22

First tip-dont use unity switch over to unreal

Ответить
Bavo Debraekeleer
Bavo Debraekeleer - 20.05.2023 16:40

I hate lightmap baking, but it's so important 🙈 Anyway, thanks for the great tips!

Ответить
shiti s
shiti s - 10.05.2023 05:36

thanksss

Ответить
Saukl
Saukl - 07.05.2023 20:59

That's a pretty good underated video here.

Ответить
Victor Novorski
Victor Novorski - 06.05.2023 09:33

Using Blender for a custom collider is definitely a W.

Ответить
Scorp
Scorp - 01.05.2023 02:54

Helped me a lot! Especially the part where you mentioned that every single mesh in your game was a separate mesh despite them being exactly the same. I went through the many buildings in my game and noticed that every single one had a separate mesh (something dumb that probuilder did), so I made all of them into a single mesh and it helped an unholy ton with the performance!

Ответить
Afrographix Studio
Afrographix Studio - 25.04.2023 18:28

use async await instead of coroutine , Make your code more simple

Ответить
Code Designer
Code Designer - 24.04.2023 15:45

Update method will cost even it is empty. Use events

Ответить
Abregado Atseri
Abregado Atseri - 12.04.2023 19:06

hi, is it possible for you to make a video on how to optimized UE 5 for low end pcs? I'm not a game developer i'm learning how to make short films using UE but its so laggy when I use grass and animate it so any optimization tips and tricks would really help.
thank you

Ответить
Shaun Hall
Shaun Hall - 02.04.2023 09:20

I remember playing Myst back in the day and my poor computer couldn't handle the rendering very well. Loved the game so much but the performance killed it for me and I never finished the game. :( Quality is so important about everything we do!

Ответить
WannabeChiara
WannabeChiara - 24.03.2023 19:34

Do you want a gamer boyfriend?

Ответить
Vik31
Vik31 - 21.03.2023 16:07

Hey, I like the way you look, missy. You remind me of Daphne in Scooby-Doo.

Ответить
zimmyjim
zimmyjim - 20.03.2023 05:17

Have u tried Unreal Editor?
Love the read hair! ..zimmyjim

Ответить
Hilbert sla
Hilbert sla - 15.03.2023 04:04

this video helped me a lot ty

Ответить
ANT18
ANT18 - 09.03.2023 20:56

I came from UPBGE (Blender game engine) which is worst optimized engine in the world probably so i have good manners optimizing everything without even thinking about it. Turning off not needed things, using object pooling etc.

Ответить
Wicked Pichu
Wicked Pichu - 08.03.2023 15:50

🥰🥰🥰

Ответить
刘叔叔
刘叔叔 - 03.03.2023 07:38

you are so cute! thank you

Ответить
Chillie
Chillie - 25.02.2023 15:32

4000 poly for a plant isn't high poly in 2023.
I mean you could use cards and decrease transparency and bring down the poly to 150 to 200.
But still i would call high poly which are like above 20,000 to 80,000.

Ответить
Wots Herflux
Wots Herflux - 23.02.2023 14:23

Unity is like magic

Ответить
Choco
Choco - 21.02.2023 23:54

Very useful tips thanks

Ответить
Kingstantin
Kingstantin - 16.02.2023 03:39

Exactly what I needed to know to push the performance of my VR game. Thank you!

Ответить
paulsaulpaul
paulsaulpaul - 14.02.2023 21:13

As of Feb 2023, I recommend everyone start getting familiar with their DOTS system and entities. But to start with, approach your design with a data-driven approach in mind. Instead of thinking of objects interacting with each other and communicating with events, game states, singletons, etc., think of arrays of structs of basic data being transformed by basic systems in batches each frame.

Every entity might have a position and a tag for their type, for example. Then each frame, you'd have a system for moving certain entities in a certain way. That system would query the entities list for all with the tag and the system would transform the entire array of data at once in a foreach loop. This is burst-compilable so it's is made for multithreading. The purpose of this is to make it so that the CPU can cache the entire block of data it is working on in a batch. This will go insanely fast compared to the traditional approach (and use less power on mobile). But that is an overview. Check the API docs for specifics. This approach requires a bit more RAM due to some duplication of data (necessary tradeoff) and it requires the scriptable render pipeline support (unless you're doing something goofy with DrawMeshInstanced, as is suggested in a reddit thread).

Ответить
Nikolett Körtvélyi
Nikolett Körtvélyi - 14.02.2023 19:09

The mesh collider bit is actually so important, it's asked in job interviews. Usually something like which collider is best for performance? It's the box collider.






Honestly I thought this is basic knowledge, how did you not meet with this bit of information?

Ответить
Karue
Karue - 07.02.2023 18:41

Great video!

Ответить
Lawrence
Lawrence - 26.01.2023 13:11

this is so fucking good/helpful, thank you/please release more shit
appreciate the broad range of things you cover for performance savings & real life example

Ответить
Xavier Doesn't Matter
Xavier Doesn't Matter - 26.01.2023 00:58

Doubt you'll see this since it's a year old, plus you probably already considered it, but another note you didn't mention about getting game objects by name is how it can screw up if you have 2 objects with same name or if someone for some reason renames the object. The sad thing is almost everything you said "Don't do this" it contradicts most tutorials. All newbie videos say just shove all your code into update but that is often a horrible idea. I learned all the same stuff you did the hard way as well because nobodies tutorials gave good advice.

Ответить
TSMSnation
TSMSnation - 14.01.2023 20:50

seeing someone struggle with and figure out some stuff I have before is a...strange feeling haha.
a woman after my own heart.

Ответить
Kira eva
Kira eva - 10.01.2023 02:42

really great video >w< i really need to use the profiler more. also your eye shadow is so good omg t_t

Ответить
. killereks
. killereks - 04.01.2023 16:18

If you want performance, you should definitely consider using the latest Unity rendering pipelines, specifically HDRP. While it does require a minimum of around a GTX 970, the increased graphics and performance benefits are worth it. Your game will scale much better and you will experience more stable FPS. It's worth the investment for the improved performance and visual quality. In the video it looks like you are currently using the built-in rendering pipeline which is extremely slow and outdated.

Ответить