Tiny3D - Frustum Culling [N64 Homebrew]

  Рет қаралды 4,568

HailToDodongo

HailToDodongo

Күн бұрын

This new example project shows how to perform culling with tiny3d.
In addition new frustum functions where added as well as an option to generate a BVH at build-time.
More information in the N64Brew discord: / discord
Repo: github.com/Hai...
_______
Music: snowfield_of_angelmechs - John Oestmann
3D Models: (CC BY 4.0):
Block-World: sketchfab.com/...
Platformer: Floatland_01" (skfb.ly/o8K6t) by eakka

Пікірлер: 42
@johnoestmannmusic
@johnoestmannmusic Ай бұрын
Very cool to see my music paired with such interesting homebrew dev. Cheers - subscribed!
@hailtododongo
@hailtododongo Ай бұрын
Thanks! Really love your music, i'm also really grateful that you release it under CC0
@shadowman_390
@shadowman_390 2 ай бұрын
A must have for a good performing game. Thank you for your service.
@makeavoy
@makeavoy Ай бұрын
I've been writing a rustlang retro-esque game engine for a couple years and i gotta say I feel like such a hack when I see these actually retro, real n64 engines coming out of the woodwork. It's awe-inspiring and nothing short of amazing the work that goes into these, keep up the incredible work!
@averyangrygardengnome
@averyangrygardengnome 2 ай бұрын
This is all waaay above my head but I know enough to know it's damn impressive
@techlm76
@techlm76 2 ай бұрын
Frustum Culling is when you only render/load within the camera's perspective and the blocks (assuming polygons) that is outside the camera's view will not be loaded nor rendered, making the system resource lightweight and smooth. Without Frustum Culling, it will have a heavy resource. Making everything rendered/loaded around you (even behind you) which will cause the performance to drop by a lot and become unstable. I hope this helps :)
@averyangrygardengnome
@averyangrygardengnome 2 ай бұрын
@@techlm76 Oooh tysm for the answer! I was aware of the concept but not the term. Doing that on the N64 seems like a huge leap in performance
@EWARS_2
@EWARS_2 2 ай бұрын
No way, Minceraft on my Nindento 64?! Very cool and fast rendering
@loxo5526
@loxo5526 2 ай бұрын
Keep in mind that SM64 rarely reached 30 FPS that's with like 1/10 of the triangles
@LaskyLabs
@LaskyLabs 2 ай бұрын
Mario 64 was made early in the console's life. SGI made the hardware, and they're an American company. So early Japanese developer documents weren't nearly as robust as they later became. The Mario head on the title screen was coded by Giles Goddard, an American. Not to say he isn't already very smart, but he had an advantage, his developer documentation wasn't rush translated into his native tongue.
@fujiwaranovari
@fujiwaranovari 2 ай бұрын
The N64 can actually render a lot of triangles, but it's bandwidth is incredibly limited, that is mainly what causes the lag in these games
@gamagama69
@gamagama69 2 ай бұрын
it was an early game, we have all sorts of modern optimizations now that the hardware has been released for almost 30 years
@trunkit8749
@trunkit8749 2 ай бұрын
Mario 64 is an unoptimized mess. You should check out Kaze Emanuar, he’s been able to optimize their code into 60fps with more objects and polygons than the original
@loxo5526
@loxo5526 2 ай бұрын
@@gamagama69 That's the point! It's crazy to think how far we have come with the same hardware
@Urotsuki
@Urotsuki 2 ай бұрын
meow meanwhile simple vrchat worlds with as low as 30k tris lag so much on quest 2
@averyangrygardengnome
@averyangrygardengnome 2 ай бұрын
Hey I really enjoyed your Fairy Tale Woods: Apple House song!
@Urotsuki
@Urotsuki 2 ай бұрын
@@averyangrygardengnome really O: thank you so much!!!
@pacomatic9833
@pacomatic9833 2 ай бұрын
VRChat allows a lot of customization, so maybe it's the other players' avatars? Maybe the world is unoptimized? And, for sure, lots of it is the Quest 2 being super weak (was already weak on launch)
@Urotsuki
@Urotsuki 2 ай бұрын
@@pacomatic9833 true! it’s many aspects usually like shaders and such as well so maybe it’s a bit exaggerated but having made super simple worlds myself the performance can be so 🤏hence why this is so impressive to see
@PrettyBlueThings
@PrettyBlueThings 2 ай бұрын
Incredible
@God_of_Thieves
@God_of_Thieves Ай бұрын
This is peak
@happyfarmer6429
@happyfarmer6429 2 ай бұрын
This is really cool! Just wondering, would back-face culling and LOD be something to be supported by a microcode, or would it simply be processed in the CPU by the game application?
@retromodeler64
@retromodeler64 2 ай бұрын
Nice Job 😀
@UltimatePerfection
@UltimatePerfection 2 ай бұрын
Avoid overdraw at any cost. Overdraw is extremely expensive on N64.
@lincruste
@lincruste 2 ай бұрын
What is overdraw ?
@UltimatePerfection
@UltimatePerfection 2 ай бұрын
@lincruste When the game renders stuff on top of already rendered stuff instead of just avoiding rendering stuff that would be hidden by the stuff in front of it in the first place.
@lincruste
@lincruste 2 ай бұрын
@UltimatePerfection ho, right, thank you
@Sanker1
@Sanker1 2 ай бұрын
that's pretty cool
@Darkho1y
@Darkho1y 2 ай бұрын
It's amazing how we take hardware frustum culling for granted these days. Do i see correctly you also cull stuff behind occluders thanks to BVH?
@pekkavaa
@pekkavaa 2 ай бұрын
Great work! Do you draw each line of the wireframe view as two triangles?
@hailtododongo
@hailtododongo 2 ай бұрын
For the wireframe specifically i'm drawing it on the CPU. Something you should only really do for debugging purposes though 😄
@guillaumefigarella1704
@guillaumefigarella1704 2 ай бұрын
when can i expect the minecraft port? no really this is amazing, completely amazing, do you have a flashcart to recommend? i really want to see it on real hardware
@Bunny_bax
@Bunny_bax 2 ай бұрын
Bro put minecraft on the N64 before gta 6
@bigboysdotcom745
@bigboysdotcom745 2 ай бұрын
Bro hyping another mid gta game before gta6💀💀💀
@jimreed8576
@jimreed8576 Ай бұрын
Where do I apply to provide graphics for this game?
@M1XART
@M1XART Ай бұрын
At times you're hitting over 600K/sec! Seems very well balanced engine to me! Even theoretical maximum performance.
@abdullahajeebi
@abdullahajeebi 2 ай бұрын
MC64.
@graalcloud
@graalcloud Ай бұрын
Gaystation could never
@sebastiankulche
@sebastiankulche Ай бұрын
This is a tech demo.
Tiny3D - Particles [N64 Homebrew]
5:26
HailToDodongo
Рет қаралды 8 М.
I made my N64 render over 8000 Polys (Koopa Karnival)
6:38
Kaze Emanuar
Рет қаралды 173 М.
Try this prank with your friends 😂 @karina-kola
00:18
Andrey Grechka
Рет қаралды 9 МЛН
99.9% IMPOSSIBLE
00:24
STORROR
Рет қаралды 31 МЛН
The coolest shader effect that nobody uses
8:03
Kristoff Red
Рет қаралды 82 М.
Portal on the Nintendo 64 is incredible
11:18
Modern Vintage Gamer
Рет қаралды 606 М.
Evolving AIs - Simulating a Simple Environment
22:24
Pezzza's Work
Рет қаралды 92 М.
How Do Game Devs NOT Overscope??
9:04
Green Light Dev
Рет қаралды 13 М.
How are toon shading and dynamic shadows possible on the N64?
7:13
James Lambert
Рет қаралды 78 М.
The Problem With Procedural Generation
17:57
Acerola
Рет қаралды 307 М.
LÖVR -- The Easiest 3D Game Engine?
11:39
Gamefromscratch
Рет қаралды 31 М.
The Wiiboy Color 2.0 - Four Years In the Making
8:26
GingerOfOz
Рет қаралды 141 М.
Tiny3D - Textured-Particles [N64 Homebrew]
5:19
HailToDodongo
Рет қаралды 2,9 М.
Better engine, Better graphics (Nintendo 64)
8:05
Kaze Emanuar
Рет қаралды 228 М.
Try this prank with your friends 😂 @karina-kola
00:18
Andrey Grechka
Рет қаралды 9 МЛН