Well your video says : "How many Rigidbodies can Unity support?". But the title is wrong. It should have been : "How many Rigidbodies can My Computer support?"
Do you see the video on Unity channel called "Writing High Performance C# Scripts?" I don't remember if had Rigybodies but they handle 100,000 Gameobjects at 60 fps.
Yeah brilliant video. I used the same technique of handling each object's movement in a single script in the game I'm working on: www.newgrounds.com/portal/view/699433
@jim at first I was: "3D snake? Wtf.... must be boring", I started playing and as the snake was getting bigger I was feeling like: "wow it's so cool to watch and play avoiding my own tail", noice! :D
Thanks bro. It was never meant to be more than a silly experiment but it got a lot more attention than I expected so I decided to try and actually make it fun. I wish I saw the writing high performance scripts video before I started though, I think I could have had it handle 10x more objects if I did.
This was an incredibly interesting video ! Thank you so much for all of these years of Unity, more than just helping me, you really have entertained me :) Cheers from France.
That nostalgia in the beginning of the video brought me back to me messing up with cryengine 2, and the Crysis memes, of course... Thank you Brackeys ;)
This was my first video of yours that I ever watched. After realizing you had tutorials your channel quickly became one of my favorite. Thank you so much for getting me into Unity!
You can still optimize this. -Instanced materials (sends 1 cube to the gpu and the gpu copies it for all other cubes in the scene.) -Deferred rendering (Lighting is rendered based on images and not geometry) -Instanced physics (Not sure how this works exactly but I think it is similar to material instancing.) -Set materials to legacy diffuse (Simpler lighting)
Sparrow I agree that it is a real job, especially what Brackeys is all about, teaching! What's the difference between someone on Udemy and Asbjørn teaching us to program? I know I'm extremely grateful that he's sharing his knowledge with everyone free of charge.
How the heck do you know he doesn't have a "real" job? And btw, good for him if he can pay the bills without doing a daily job he hates, what's the matter with that? I really don't get people... and the more I age the more I don't wish to.
Damn, you only have a GTX 780... That's humbling. Keep up the good work man. It shows that you don't need the latest of the latest to make amazing content
I doubt you understand the actual differences between a 780 and a newer gpu. There aren't many. The returns on processing power of newer generation video cards are getting smaller and smaller and design has started moving towards increasing memory size and support for newer tech like 4k screens. I have a 660 ti ftw+ that has absolutely no problem running newer games at max settings(1920x1080). Also, the physics calculations have nothing to do with the gpu.
They are most definitely slightly faster and can handle a greater workload. 3x though? That's just stupid. They're not THAT much better that I feel I need to run out and buy the newest and greatest. especially when my current card has no problem running the newest games or making content. You want to spend $700 on a video card? That's great, go waste your money. Tell everyone it's "like 3x faster than a 780" till you start to believe it.
Jolan Espinal sometimes its the program that has the built in limit, where no matter how muscular and beefy and manly your computer gets it will never go past that programs limit, I've seen programs do this but I don't remember their names anymore. Don't use them.
You can write a horrible algorithm that does everything 100x slower than it should, no matter what hardware you're using. So yeah, it's very much about the engine. Compare different engines on the same hardware and you'll get different results.
No physics engine that i know has a built in limit, at lest not any professional physics engine, PhysX, Bullet and Newton Physics Engine all use to the max the CPU/cores power of your PC, they behave differently tho, for example Newton Physics Engine uses more physical accurate calculations (there the name) that makes it more CPU heavy but also much more accurate and stable, is the physics engine used on all Frictional Games, games for example. Is the game developers or the Unity engine developers that implement limits on how many physics calculations you can do in a particular game, remember a game also uses the CPU, for AI, Sound, gameplay logic and some graphic effects, you need to save CPU power for the rest of the game, not everyone has 800+€ CPU's. Also people don't think just because you have a Nvidia GPU and the game has PhysX that is the GPU calculating the physics.
Hey Brackeys, Maybe GPU instancing is another thing which helps when it comes to rendering multiple rendering. :) Maybe you could make a scene manager tutorial. To Save Scenes or additive loading of scenes. I really love your work since you are on youtube :) Therefore I´m supporting you on Patreon :)(not much but all i can afford at the moment)
GPU instancing only helps if you want multiple instances of the same mesh & materials, but with slight alteration to said material. Otherwise, activating it or not doesn't change much from the static or dynamic batching already in Unity. In the case of what is displayed in this video, GPU Instancing would be good if, for example, he was to randomize the colors of the cubes when instantiated. GPU Instancing makes it possible for batched assets to still have "unique attributes" stored onto their unique ID.
Brackeys, do you know of any way to export unity animations as films, or is screen capture the only way? You could do so many cool physics based animations and it runs very fast, in real time actually, and is kind of easy to set up with scripts. Doing animations like those in a 3D software would be so slow to set up and render. Add some post processing in After Effects and you have an epic looking physics based animation.
There is some recorders in the asset store. Also Unity have one to work with cinemachine and timelime, but its on beta. Here. github.com/Unity-Technologies/GenericFrameRecorder
For example for a video you could show us how to create a save system for one of your games like CubeThon, so that even if you quit the game and reopen it you still start at your saved loc. I have learnt how to code a game in less than 4 days thanks to you, you are a literal God!
Brackeys, I'm trying to make a android game in Unity but the apk always fail to make.. Could you make a tuturial? Always get the same error (to long to enter here)
There are a 2 things that pop up very long errors: 1ste: CommandInvokationFailure: Failed to build apk. C:/Program Files (x86)/Java/jdk-9.0.1\bin\java.exe -Xmx2048M -Dcom.android.sdkmanager.toolsdir="C:/Program Files (x86)/Java/Sdk\tools" -Dfile.encoding=UTF8 -jar "C:\Program Files\Unity\Editor\Data\PlaybackEngines\AndroidPlayer/Tools\sdktools.jar" - stderr[ Exception in thread "main" java.lang.reflect.InvocationTargetException at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:564) at SDKMain.main(SDKMain.java:130) Caused by: java.lang.NoClassDefFoundError: sun/misc/BASE64Encoder at com.android.sdklib.internal.build.SignedJarBuilder.(SignedJarBuilder.java:177) at com.android.sdklib.build.ApkBuilder.init(ApkBuilder.java:446) at com.android.sdklib.build.ApkBuilder.(ApkBuilder.java:422) at com.android.sdklib.build.ApkBuilder.(ApkBuilder.java:362) at UnityApkBuilder.(UnityApkBuilder.java:214) at UnityApkBuilder.main(UnityApkBuilder.java:34) ... 5 more Caused by: java.lang.ClassNotFoundException: sun.misc.BASE64Encoder at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:466) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:563) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:496) ... 11 more ] stdout[ ] exit code: 1 UnityEditor.Android.Command.WaitForProgramToRun (UnityEditor.Utils.Program p, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg) UnityEditor.Android.Command.Run (System.Diagnostics.ProcessStartInfo psi, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg) UnityEditor.Android.AndroidSDKTools.RunCommandInternal (System.String javaExe, System.String sdkToolsDir, System.String[] sdkToolCommand, Int32 memoryMB, System.String workingdir, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg) UnityEditor.Android.AndroidSDKTools.RunCommandSafe (System.String javaExe, System.String sdkToolsDir, System.String[] sdkToolCommand, Int32 memoryMB, System.String workingdir, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg) UnityEditor.BuildPlayerWindow:BuildPlayerAndRun() 2e: UnityEditor.BuildPlayerWindow+BuildMethodException: 3 errors at UnityEditor.BuildPlayerWindow+DefaultBuildMethods.BuildPlayer (BuildPlayerOptions options) [0x00207] in C:\buildslave\unity\build\Editor\Mono\BuildPlayerWindowBuildMethods.cs:172 at UnityEditor.BuildPlayerWindow.CallBuildMethods (Boolean askForBuildLocation, BuildOptions defaultBuildOptions) [0x00050] in C:\buildslave\unity\build\Editor\Mono\BuildPlayerWindowBuildMethods.cs:83 UnityEditor.BuildPlayerWindow:BuildPlayerAndRun() (all help is welcome I'm searching and asking on forums how to but not a single answer worked for me.)
Well... is like saying : "I need to learn painting to make a House" ? Depend on what type of house you gonna build. If your game has physics, this si definitively a good video explaining how things works or you can do optimization Is simply understanding on the physics engine and her limits.
No you dont have to know it. Well, you only have to know which button does what, but you dont have to understand how it works. Understanding it would help you obv, but it's not necessary.
This helped clarify the difference between Frames Per Second and Simulation speed. Often times it's easy to conflate degradation in Simulation Speed with lower FPS.
Very misleading title. This video is about how to optimise performance, not how many rigidbodies the engine supports. If the content matches the title, this video would be 2 seconds long with the number 2^32 displaying on screen.
I learnt how to optimize from this video, human interaction 101: constructive criticism works and destructive criticism hurts. All in all I rate this video rocked.
"Fine" is a rather subjective concept. I'm sure it might run games at 60fps with medium settings at 1920x1080, but can it do 144fps at 2560x1440? Doubt it.
Hey Brackeys. In source engine they use a work around where they simulate the physics in advance, at low framerates, record it, and play it back at 60fps. If you would like, I can set up a system to do this in unity! I can integrate it with that "vertex" based support you mentioned with blender.
Gwentarino Kripperino God was lazy so he created humans to eventually make another world aka a simulation then those people make a simulation and so on.
Wonderful tutorial as always. I love learning about new ways to optimize and use the engine itself. Knowing it runs smoother when making the game really helps when making a final product, so you can expect better performance when your game is running decent in the editor. Ever gonna do a tutorial on optimization like the LODgroup and Occlusion Culling features. Learning small things about lighting and particles helps larger games to get off the ground and at least ensure a steady framerate and gameplay instead of lagging the hell out when not staring at the ground, especially object pooling that stuff is hard a fuck
I really liked this video. I would love to see some more benchmarking of unity if you get any ideas as a I learnt a lot from this one video as it is, thanks can't wait to see more!
There are many ways of optimization, you could even add Dynamic Occlusion culling which may allow double the amount of cubes. For those that don't know what this is, it's typically a method of disabling the rendering of items not seen by the camera, so for example the cubes hidden behind others. Another method is an asset on the Unity store that does real-time decimation LOD on objects that are in the distance or hidden at close range. The title as others state is a bit misleading.. it should be labeled "How many cubical rigid bodies with physics can Unity support."
I want to add a quick note to that video: the slowest thing while calculating collisions is when an rigidbody is colliding with more than one other object with a rigidbody at the same time.
I love how my most satisfying day in Unity and Blender was the day I set up a wrecking ball that smashed through a wall and looked glorious. I now feel inadequate after looking at some of these videos.
Why did nobody ever use cryengine? I played around w/ the crysis editor like that back in the day... made giant barrel avalanches that would flow down mountains and take out structures, enemies and vehicles who would just stand there waiting for it. Was fun back in the day. Crysis 1 was such a good game too.
My VRChat world (a shooting range) has a large brick wall that I assembled by making each individual brick a rigidbody with a very high friction physic material. It sure is a beautiful sight ingame to shoot it with the RPG I added and watch thousands of bricks spray in all directions. And still have 90FPS WHILE IN VR mind you...
There is one more thing you could try. You could design a compute shader for physics calculations and assign each cube to a separate core on the gpu. The difference should be enormous, but would also take a lot of work.
I remember one specific crysis physics video where the guy said "I had to turn around when the barrels exploded or else the game would crash." ah those were the days
The worst case for physics spatial partitioning is all of the objects being in a giant pile. try doing this same amount of objects, except spread out across a map. you will see a massive improvement in performance.
Something else that would speed things up is using spheres rather than cubes. The Physics calculation for box colliders uses a technique called OBB, which is one of the slowest techniques, only quicker than convex hull calculations. Whereas a sphere only uses distance checks based on the radius and position of the collider, which is much much simpler than OBB and is infact the quickest calculation. If you were to compare 6000 cubes to 6000 spheres, you would see tremendously different results :)
in game you'll be able to render the stack fall faster, you can even use obfuscation and dithering to speed up your renders. in game you would also be able to dynamically control the LOD of the falling objects, also speeding up the frame rate.
objects out of view would use lower LOD or obfuscation rendering (aka not seen, not there) you'd have a much faster fall rate. (also fine tuning your physics will help) you can only use so much acceleration when using so many actors :P
0:41 "To no surprise this scene ran smoothly"
My PC: Three FPS, take it or leave it.
nice one
underrated
Ye
theres three, actually
Three FPS or it shuts down and you lose all progress
But can it run crysis?
Ancient Entity *Insert overused reply to overused comment here*
You need a military hardware PC to run crysis
"ba dum tss"
One does not simply run Crysis.
Ancient Entity HEY VSAUCE MICHAEL HERE
Well your video says : "How many Rigidbodies can Unity support?". But the title is wrong. It should have been : "How many Rigidbodies can My Computer support?"
Yep unity is a game engine and probably supports nearly inf.
Also this video should be updated for new ECS feature :)
@@insanitylol yeah run unity on a super computer and bam, 9.999E+9999999999999999999999999999 rigidbodies
yeah
I got a Intel i5 lats gen a Intel uhd 620 and 8gb ram so it definitely can't run it lol
Your pc: Handles 5000 cubes running smoothly
My pc: Spawn 1 cube and dies
my pc: *dies when starts up*
SkyLimited my pc: dies when i think before my hand even touches the on button
my pc: “dies”
my laptop when i put a single light in 2D: OH NO THERE IS LIGHT DECREASE THE FPS DECREASE ITTT
and then the game start glitching
bruh
my pc died during the manufacturing phase
My pc is exploding with 10 😂
That's not a pc, that's a potato XD
PC (Potato Computer)
What type of calculator did you buy?
Alex Voxel I feel like something is wrong there then
Tim Slee some japan selled me tablet with "mirror function". Later i realized that was just mirror.
the professionalism
IT'S OVER 9000!!!!
buzzkill
You're very stale for thinking that "dead" memes are not viable anymore.
Eimantas Zievys how do you know they were talking about that specifically?
He deleted his comment so....
Unity pleb I personally use the far superior professional engine...
Yes you guessed it Scratch.
pff, ur such a casual pleb, REAL pros use greenfoot
UNREAAAAAALL
Guybrush Threepwood how foolish. Hour of code games are far superior
Guybrush Threepwood lol Crytek beats Epic? Hoowwiieee
Nah, the TRUE code language is Whitespace and Lolcat,
"It's a pretty standard setup."
>Dual Intel Xeon processors
ok. but why does he sound like derik zoolander
Do you see the video on Unity channel called "Writing High Performance C# Scripts?"
I don't remember if had Rigybodies but they handle 100,000 Gameobjects at 60 fps.
Yep, that was an awesome vid! :) I would have thought that using the new Entity Component System it must help tons.
Yeah brilliant video.
I used the same technique of handling each object's movement in a single script in the game I'm working on:
www.newgrounds.com/portal/view/699433
@jim at first I was: "3D snake? Wtf.... must be boring", I started playing and as the snake was getting bigger I was feeling like: "wow it's so cool to watch and play avoiding my own tail", noice! :D
Thanks bro. It was never meant to be more than a silly experiment but it got a lot more attention than I expected so I decided to try and actually make it fun. I wish I saw the writing high performance scripts video before I started though, I think I could have had it handle 10x more objects if I did.
Some of the features in that video aren't even released yet or even in Unity documentation (publicly) :P
How many Rigid bodies can Sasha Grey support?
Over 9000.. (yearly :D)
Over 9000?! I bet she doesn't go outside wearing a skirt on windy days for fear of being asked whats that clapping noise?
This was an incredibly interesting video ! Thank you so much for all of these years of Unity, more than just helping me, you really have entertained me :) Cheers from France.
"Pretty standard"... has 32Gb of Ram -_-
i mean, its avg speed ram, and, pun unintended, size really doesn't matter
jonyleo500 He actually has 8gb
hahayesokay No he has 8gb of ram made up of 4 2gb sticks.
he has 32gb
>tfw both computers combined have 12 gigs of ram
THERE IS SO MUCH TO LEARN ON YOUR CHANNEL ITS AMAZING
Brackey's is back at it again! Very interesting test to watch to see what Unity can handle.
You can do better with some C# skill and some third party stuff
Interesting! :D
SixxFox *Brackeys
That nostalgia in the beginning of the video brought me back to me messing up with cryengine 2, and the Crysis memes, of course... Thank you Brackeys ;)
Never ceases to amaze me that such a powerful piece of software can be free
*free-ish
Did the video just ended abruptly and was cut short?
Omar Ch.
Nope it just your browser
no. your grammar ended abruptly and was cut short xD
(jk btw)
2 Chainz's 2nd Chain nice one, I like how you cut short you're comme-
Wait wha-
This was my first video of yours that I ever watched. After realizing you had tutorials your channel quickly became one of my favorite.
Thank you so much for getting me into Unity!
I felt like I was watching 9/11 simulations for the first few minutes
Junuh 4:51
Junuh so your joking about a terrorist attack where people died? seems fitting you’d have a ugandan knuckles profile picture.
i hope you have a great day :D
Junuh Toché
Thicken Strip
Fuck you
The video was low-key awesome, btw got a nice screenshot of your setup :)
imagine doing this on the worlds fastest computer
5.000.000.000 = 100 FPS
@@layouty5001 so 10 billion will be 50 FPS? still pretty good FPS, my pc runs roblox at 30 FPS
1 cube is 1 fps
@@silly_lil_guy ha, my pc cant even run Roblox
@@SunilNmb i have laptop, and he can't support picture.
Probably the most entertaining and learnable video I've seen on your channel.
you went 3kliksphilip on this one
To much 3kliksphilip
@@andris1337 NEVER enough kliksphilip
1:16 that fold in rigid bodies that looks like cloth is so satisfying
5:18 "Omar"
**video ended before he could finish what he was saying**
Oh marc-
You can still optimize this.
-Instanced materials (sends 1 cube to the gpu and the gpu copies it for all other cubes in the scene.)
-Deferred rendering (Lighting is rendered based on images and not geometry)
-Instanced physics (Not sure how this works exactly but I think it is similar to material instancing.)
-Set materials to legacy diffuse (Simpler lighting)
Not only 2 CPUs but 2 Intel Xeons! That's got to be pricey :D
Keep up the awesome videos Asbjørn! (I hope I spelled that right)
yea youtube views pays for it, these people dont have real jobs
+Thug Nme, yeah, all that sweet youtube money.
btw, running a youtube channel is a real and legit job, name one reason it ain't.
Sparrow I agree that it is a real job, especially what Brackeys is all about, teaching! What's the difference between someone on Udemy and Asbjørn teaching us to program? I know I'm extremely grateful that he's sharing his knowledge with everyone free of charge.
How the heck do you know he doesn't have a "real" job? And btw, good for him if he can pay the bills without doing a daily job he hates, what's the matter with that? I really don't get people... and the more I age the more I don't wish to.
But only GTX 780?
this is one of the best tutorials ever. the format is great.
Damn, you only have a GTX 780...
That's humbling. Keep up the good work man. It shows that you don't need the latest of the latest to make amazing content
I doubt you understand the actual differences between a 780 and a newer gpu. There aren't many. The returns on processing power of newer generation video cards are getting smaller and smaller and design has started moving towards increasing memory size and support for newer tech like 4k screens. I have a 660 ti ftw+ that has absolutely no problem running newer games at max settings(1920x1080). Also, the physics calculations have nothing to do with the gpu.
Congratulations sir, you are very smart. Completely misunderstood what my comment was going for, but who cares, you displayed that you were very smart
Ok well then how exactly is it "humbling" to get stuff done with a 780? That's not very smart material btw.
A 1080ti is like 3x faster than a 780. Get your head out of your ass.
They are most definitely slightly faster and can handle a greater workload. 3x though? That's just stupid. They're not THAT much better that I feel I need to run out and buy the newest and greatest. especially when my current card has no problem running the newest games or making content. You want to spend $700 on a video card? That's great, go waste your money. Tell everyone it's "like 3x faster than a 780" till you start to believe it.
I love the new look of the logo and thanks for the sick video!
its not how many unity can handle its about how many your computer can handle
Jolan Espinal sometimes its the program that has the built in limit, where no matter how muscular and beefy and manly your computer gets it will never go past that programs limit, I've seen programs do this but I don't remember their names anymore.
Don't use them.
You can write a horrible algorithm that does everything 100x slower than it should, no matter what hardware you're using. So yeah, it's very much about the engine. Compare different engines on the same hardware and you'll get different results.
No physics engine that i know has a built in limit, at lest not any professional physics engine, PhysX, Bullet and Newton Physics Engine all use to the max the CPU/cores power of your PC, they behave differently tho, for example Newton Physics Engine uses more physical accurate calculations (there the name) that makes it more CPU heavy but also much more accurate and stable, is the physics engine used on all Frictional Games, games for example. Is the game developers or the Unity engine developers that implement limits on how many physics calculations you can do in a particular game, remember a game also uses the CPU, for AI, Sound, gameplay logic and some graphic effects, you need to save CPU power for the rest of the game, not everyone has 800+€ CPU's. Also people don't think just because you have a Nvidia GPU and the game has PhysX that is the GPU calculating the physics.
It's both. It's *always* both. The more efficient the code, the less taxing it is on the cpu.
its still limited by unity though
This was a really awesome video idea, keep up the good work!
Hey Brackeys, Maybe GPU instancing is another thing which helps when it comes to rendering multiple rendering. :) Maybe you could make a scene manager tutorial. To Save Scenes or additive loading of scenes. I really love your work since you are on youtube :) Therefore I´m supporting you on Patreon :)(not much but all i can afford at the moment)
GPU instancing only helps if you want multiple instances of the same mesh & materials, but with slight alteration to said material. Otherwise, activating it or not doesn't change much from the static or dynamic batching already in Unity.
In the case of what is displayed in this video, GPU Instancing would be good if, for example, he was to randomize the colors of the cubes when instantiated. GPU Instancing makes it possible for batched assets to still have "unique attributes" stored onto their unique ID.
Very satisfying to watch. I've been into game development as a hobby for around 20 years. Glad I found your channel. Subbed and liked :)
Brackeys, do you know of any way to export unity animations as films, or is screen capture the only way?
You could do so many cool physics based animations and it runs very fast, in real time actually, and is kind of easy to set up with scripts. Doing animations like those in a 3D software would be so slow to set up and render. Add some post processing in After Effects and you have an epic looking physics based animation.
PushMyCarr there is a recorder made by unity, saw it somewhere in their neon challenge announcement. Look there.
There is some recorders in the asset store. Also Unity have one to work with cinemachine and timelime, but its on beta. Here. github.com/Unity-Technologies/GenericFrameRecorder
MrFrostCA *there ARE
Albond STFU*
Skeleton Clique Why?
BRACKEYS: WILL UNITY BREAK ??
ME: WILL UNITY OPEN ?
Spelling of break... LOL
Thanks for the Dragonball reference :)
You are an idiot if you feel the need to be thankful for such a nonsense...
You are an idiot if you feel the need to insult a random person on the internet for no apparent reason.
@@thousandsofclowns lol
The brackeys exploding was really cool at the end!
I wonder how many people are lying about their pc breaking lol
The last simple script is awesome, love it :D
rigidbody.exe has stoped working. :)
For example for a video you could show us how to create a save system for one of your games like CubeThon, so that even if you quit the game and reopen it you still start at your saved loc. I have learnt how to code a game in less than 4 days thanks to you, you are a literal God!
RIP Brackeys
A new era of Satisfying videos on youtube? There clearly has to be more of this stuff! 😄
Brackeys, I'm trying to make a android game in Unity but the apk always fail to make.. Could you make a tuturial? Always get the same error (to long to enter here)
mickey peters Post the error as a pastebin link? I maybe able to help you as I had problems with this too but I fixed it
There are a 2 things that pop up very long errors:
1ste:
CommandInvokationFailure: Failed to build apk.
C:/Program Files (x86)/Java/jdk-9.0.1\bin\java.exe -Xmx2048M -Dcom.android.sdkmanager.toolsdir="C:/Program Files (x86)/Java/Sdk\tools" -Dfile.encoding=UTF8 -jar "C:\Program Files\Unity\Editor\Data\PlaybackEngines\AndroidPlayer/Tools\sdktools.jar" -
stderr[
Exception in thread "main" java.lang.reflect.InvocationTargetException
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:564)
at SDKMain.main(SDKMain.java:130)
Caused by: java.lang.NoClassDefFoundError: sun/misc/BASE64Encoder
at com.android.sdklib.internal.build.SignedJarBuilder.(SignedJarBuilder.java:177)
at com.android.sdklib.build.ApkBuilder.init(ApkBuilder.java:446)
at com.android.sdklib.build.ApkBuilder.(ApkBuilder.java:422)
at com.android.sdklib.build.ApkBuilder.(ApkBuilder.java:362)
at UnityApkBuilder.(UnityApkBuilder.java:214)
at UnityApkBuilder.main(UnityApkBuilder.java:34)
... 5 more
Caused by: java.lang.ClassNotFoundException: sun.misc.BASE64Encoder
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:466)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:563)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:496)
... 11 more
]
stdout[
]
exit code: 1
UnityEditor.Android.Command.WaitForProgramToRun (UnityEditor.Utils.Program p, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg)
UnityEditor.Android.Command.Run (System.Diagnostics.ProcessStartInfo psi, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg)
UnityEditor.Android.AndroidSDKTools.RunCommandInternal (System.String javaExe, System.String sdkToolsDir, System.String[] sdkToolCommand, Int32 memoryMB, System.String workingdir, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg)
UnityEditor.Android.AndroidSDKTools.RunCommandSafe (System.String javaExe, System.String sdkToolsDir, System.String[] sdkToolCommand, Int32 memoryMB, System.String workingdir, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg)
UnityEditor.BuildPlayerWindow:BuildPlayerAndRun()
2e:
UnityEditor.BuildPlayerWindow+BuildMethodException: 3 errors
at UnityEditor.BuildPlayerWindow+DefaultBuildMethods.BuildPlayer (BuildPlayerOptions options) [0x00207] in C:\buildslave\unity\build\Editor\Mono\BuildPlayerWindowBuildMethods.cs:172
at UnityEditor.BuildPlayerWindow.CallBuildMethods (Boolean askForBuildLocation, BuildOptions defaultBuildOptions) [0x00050] in C:\buildslave\unity\build\Editor\Mono\BuildPlayerWindowBuildMethods.cs:83
UnityEditor.BuildPlayerWindow:BuildPlayerAndRun()
(all help is welcome I'm searching and asking on forums how to but not a single answer worked for me.)
Have you tried downgrading to JDK 8 instead of 9?
Codey Didn't tried that yet doing it tomoro I will let you know if it worked!! Thanks for the help btw !!
mickey peters downgrading should solve the problem like codey said. Had the same issue 2h ago :)
Hey i have Just Started Unity and you have Been a Great Help for me!
My GPU fried watching this 👌🏿
You madman!!! Loved this video (as always)
Jaysus I need to know this kind of complicated math just to program in Unity?
Corsair Carl i see no math in this video
Alberto Calle only math is the fractions
Well... is like saying : "I need to learn painting to make a House" ?
Depend on what type of house you gonna build.
If your game has physics, this si definitively a good video explaining how things works or you can do optimization
Is simply understanding on the physics engine and her limits.
No you dont have to know it. Well, you only have to know which button does what, but you dont have to understand how it works. Understanding it would help you obv, but it's not necessary.
Wtf?
This helped clarify the difference between Frames Per Second and Simulation speed. Often times it's easy to conflate degradation in Simulation Speed with lower FPS.
Going to try with my gtx 1080ti and i7 7700k
Obvious Troll. Yet you still got baited. Congrats You got me there man. xD
Kombi if you written this comment then you do care
temmie shopkeeper Hell the fuck no? xD What kind of thinking is that.
temmie wtf xD
That was awesome, thanks for putting in the effort! Funny enough, you're running the exact same setup as mine.
3kliksbrackeys
That vertex to cube snippet is now my favourite thing to do in Unity
Very misleading title. This video is about how to optimise performance, not how many rigidbodies the engine supports. If the content matches the title, this video would be 2 seconds long with the number 2^32 displaying on screen.
A lesson on powers of 2 wouldn't be as interesting.
human interaction 101: you don't lie because the truth is not "as interesting".
Peida Li Yeah that's true
I learnt how to optimize from this video, human interaction 101: constructive criticism works and destructive criticism hurts. All in all I rate this video rocked.
I hope to see more videos like this.
Just screwing around and finding some data.
*Make a comprehensive video on "How to implement google play services in a unity project" please. Please*
(like to bring this comment on top)
yes.
Just search for it, I already added it to my game
I have a tutorial on my channel if you want to check it out
Thanks. I will check
Unity script kiddies
sir you're helping a lot!
expecting more useful stuff coming in the future❤
Two Xeon CPUs : then GTX 780.... 8Gbs of DDR3 RAM...HMMMMMMMM something doesn't add upppppppp!!!!!!
hmmm why? it's 4x 8gb = 32gb of RAM, seems about right
True, a 780 in 2017?!? Goodness grace...
its outdated
So is my 770. Still runs games fine though.
"Fine" is a rather subjective concept. I'm sure it might run games at 60fps with medium settings at 1920x1080, but can it do 144fps at 2560x1440? Doubt it.
The braking Brackeys could be a cool intro
0:58 "glorious 160 frames per second"
haha mate thats awful, especially if you consider that you just knocked over a bunch of cubes
Hey Brackeys. In source engine they use a work around where they simulate the physics in advance, at low framerates, record it, and play it back at 60fps. If you would like, I can set up a system to do this in unity! I can integrate it with that "vertex" based support you mentioned with blender.
Fking math and calculations I'm quitting making games
nice motivation
Importance of mathematics in game development (and programming in general) is usually highly overestimated.
Since youre saying that, did you even start?
im not the best at math but i still like programming and making games..you need more logic than math in programming :)
Gwentarino Kripperino God was lazy so he created humans to eventually make another world aka a simulation then those people make a simulation and so on.
This video was awesome as always! I love your videos! And please do experiments more often! And maybe do a shader tutorial in the future? :)
Har lige fundet din kanal. Den er virkelig god!
Wonderful tutorial as always. I love learning about new ways to optimize and use the engine itself. Knowing it runs smoother when making the game really helps when making a final product, so you can expect better performance when your game is running decent in the editor.
Ever gonna do a tutorial on optimization like the LODgroup and Occlusion Culling features. Learning small things about lighting and particles helps larger games to get off the ground and at least ensure a steady framerate and gameplay instead of lagging the hell out when not staring at the ground, especially object pooling that stuff is hard a fuck
In 2021 we using DOTS physics and Burn compiler and can handle more than 50k objects with 500fps=)
I really liked this video. I would love to see some more benchmarking of unity if you get any ideas as a I learnt a lot from this one video as it is, thanks can't wait to see more!
There are many ways of optimization, you could even add Dynamic Occlusion culling which may allow double the amount of cubes. For those that don't know what this is, it's typically a method of disabling the rendering of items not seen by the camera, so for example the cubes hidden behind others. Another method is an asset on the Unity store that does real-time decimation LOD on objects that are in the distance or hidden at close range. The title as others state is a bit misleading.. it should be labeled "How many cubical rigid bodies with physics can Unity support."
I want to add a quick note to that video: the slowest thing while calculating collisions is when an rigidbody is colliding with more than one other object with a rigidbody at the same time.
Awesome!! Thanks for this video. this would be a really great help.
I love how my most satisfying day in Unity and Blender was the day I set up a wrecking ball that smashed through a wall and looked glorious. I now feel inadequate after looking at some of these videos.
0:14 PERFECTLY GENERIC OBJECT SPOTTED
0:04 the graphics look soo real!
I dont know anything about this but, its still insteresting. Great job
I admire your dedication, great vid
Bravo ! You should inverse the last scene so that the cubes rebuild Brackeys ;)
Why did nobody ever use cryengine? I played around w/ the crysis editor like that back in the day... made giant barrel avalanches that would flow down mountains and take out structures, enemies and vehicles who would just stand there waiting for it.
Was fun back in the day. Crysis 1 was such a good game too.
4:10 LOVE THAT!! ”But Why stop there”
Thanks for putting the CPU info, I was thinking of this through the entire video. Please consider presenting that information at the beginning.
I think I should develop an app that automatically comments "Absolute awesomeness" on every video he creates even when I am dead
My VRChat world (a shooting range) has a large brick wall that I assembled by making each individual brick a rigidbody with a very high friction physic material. It sure is a beautiful sight ingame to shoot it with the RPG I added and watch thousands of bricks spray in all directions. And still have 90FPS WHILE IN VR mind you...
Air full of floating cubes looks dope. Seriously, you can make a music video / game hit with just this.
Anything above 9000 blocks is always satisfactory, well done good sir.
There is one more thing you could try. You could design a compute shader for physics calculations and assign each cube to a separate core on the gpu. The difference should be enormous, but would also take a lot of work.
I remember one specific crysis physics video where the guy said "I had to turn around when the barrels exploded or else the game would crash." ah those were the days
You have to do this test again with the new ECS, that would be interesting to see.
Thankyou so much.. Love from India
Very funny and informative, well done !
Also Shuriken Particle System only uses the cheapest sphere collider for performance sake. Anyway nice video dude.
Me: Wow cool, how many rigidbodies can I support?
My computer: ...three.
Me: Three hundred? Three thousand?
My computer: Three. Take it or leave it.
Ang Hua Lee 因為他把.net前的“不認識”當成了網址的一部分
Ang Hua Lee 因為他把.net前的“不認識”當成了網址的一部分
If your pc can support billions, then unity can too
Great video man!
The worst case for physics spatial partitioning is all of the objects being in a giant pile. try doing this same amount of objects, except spread out across a map. you will see a massive improvement in performance.
Something else that would speed things up is using spheres rather than cubes. The Physics calculation for box colliders uses a technique called OBB, which is one of the slowest techniques, only quicker than convex hull calculations. Whereas a sphere only uses distance checks based on the radius and position of the collider, which is much much simpler than OBB and is infact the quickest calculation.
If you were to compare 6000 cubes to 6000 spheres, you would see tremendously different results :)
in game you'll be able to render the stack fall faster,
you can even use obfuscation and dithering to speed up your renders.
in game you would also be able to dynamically control the LOD of the falling objects, also speeding up the frame rate.
objects out of view would use lower LOD or obfuscation rendering (aka not seen, not there)
you'd have a much faster fall rate. (also fine tuning your physics will help)
you can only use so much acceleration when using so many actors :P
I forgot about those Crysis barrel tests. I wonder how far games today do those tests.
"Building the game took my fps from 33 to 50" wow that got my attention
i felt the "its over 9000" reference was totally needed in this video