- Видео 3
- Просмотров 177 430
Hexel
Канада
Добавлен 25 дек 2013
Minecraft... but dithered (C++ OpenGL)
I forked a C++ OpenGL Minecraft Clone and implemented various dithering algorithms (Floyd-Steinberg Dithering, Bayer Dithering which are also called Error Diffusion Dithering and Ordered Dithering respectively).
Project GitHub: github.com/MartensCedric/Pointcraft
Dithering Resources:
surma.dev/things/ditherpunk/
caca.zoy.org/study/part2.html
blog.42yeah.is/rendering/2023/02/18/dithering.html
Chapters:
00:00 Minecraft Dithering Showcase
00:48 Dithering Explained
02:12 Minecraft Fork
02:47 Floyd-Steinberg Dithering (Error Diffusion)
04:55 Making stuff look good
06:47 Bayer Dithering (Ordered Dithering)
09:20 Outro
CREDITS:
ALL Music: massobeats
ruclips.net/video/tEzzsT4qsbU/видео.html
ruclips.net/video/J8n...
Project GitHub: github.com/MartensCedric/Pointcraft
Dithering Resources:
surma.dev/things/ditherpunk/
caca.zoy.org/study/part2.html
blog.42yeah.is/rendering/2023/02/18/dithering.html
Chapters:
00:00 Minecraft Dithering Showcase
00:48 Dithering Explained
02:12 Minecraft Fork
02:47 Floyd-Steinberg Dithering (Error Diffusion)
04:55 Making stuff look good
06:47 Bayer Dithering (Ordered Dithering)
09:20 Outro
CREDITS:
ALL Music: massobeats
ruclips.net/video/tEzzsT4qsbU/видео.html
ruclips.net/video/J8n...
Просмотров: 5 036
Видео
Making my own 3D GAME ENGINE and GAME in 48 HOURS? C++ OPENGL
Просмотров 154 тыс.Год назад
For GMTK2023 I made my own game engine using C and OpenGL and then made my own game. Itch: martenscedric.itch.io/portable-par GitHub: github.com/MartensCedric/portable-par Chapters: 00:00 Intro 00:43 Window 01:16 OpenGL Basics 02:40 First Triangle Done 03:23 Textures Done 04:21 Technologies used 04:59 Lighting and Shading 05:55 Game Ideas 06:30 Golf Ball 07:01 Terrain 07:40 OpenCV and Physics 0...
A Decade of Gamedev: My Journey in 25 Projects
Просмотров 18 тыс.Год назад
In the video, I'm sharing my story of how I got into programming and game development, and I'm showing off all the projects I've worked on over the last 10 years, every success and failure. My GitHub: github.com/MartensCedric Ludum Dare Entries: ldjam.com/users/martenscedric/games Chapters: 00:00 Fast-forwarded Showcase 00:30 Coin Eater 01:01 Learning Programming 01:32 Cells 01:56 FishEco 02:35...
This video helped me to better understand the process of game development . Thanks man
I want you to be my girlfriend bro.
what the hell os is this
i know linux but what linux
arch linux
Gameplay or shadows? Oh, he's gonna mfing do the shadows!!! I was right. LOL
Watching this feels so good after learning openGL and understanding every step
Do Vulkan next 😂
All the APIs compatibility with other systems really saved your ass...
Not really, you can pretty much copy and paste bits and pieces and stitch em together into a game of sorts in very little time. It's once you want to expand your game to have multiple levels and objects with different properties and menus and so on that it gets a lot more complicated, cause you have to organise everything
6:47 this how is called the app?
Portable Par
can i get the game engine
the GitHub link is in the description, the engine is highly coupled with the game though
i would like to see such thing implementet in an actual shader for minecraft
You’re S tier. Subbed. You code with the same passion I drive Hornets with in DCS. And all high skill programmers are so adept at language and optimization it shines through in your excellent narrative. No wasted words proper compressor on the music. 10/10
Return of Obra Dinn has a really nice dithering shader, one of the goals of it was to stop pixels of non-flat textures from shimmering when you move - dithering dots instead of staying where they were on the screen, try to stay where they were in the world.
This looks cool
[1910]
very very cool
yo fire video 🔥please make more computer graphics vids
This is really cool! I wanted to run the Floyd Steinberg algorithm at a higher resolution, and I figured out you just have to edit lines 41 and 42 of src/Scene/Effects/FloydSteinbergEffect.h. I couldn't run it at 1080p though. I got around 40 fps at 540p. It reminds me of my e-ink tablet. I bet they use similar algorithms.
Yeah, I explain a bit later in the video where this algorithm cannot run in parallel, so it's fully on the CPU and is slow. You should be able to run bayer 60fps on higher resolution
nice, floyd-steinberg sounds like a good mid-way point in a grayscale image to ascii converter
someone gotta put this on a flip display
awesome
but whyyyyyyy, it hurts my brain when looking at it
0:14, have you heard of Aphantasia? well its actually a scale. 1-5: 1 being photo-realistic, 5 being nothing at all. If thats how your thoughts look your probably a 3-4 on that scale. does this matter? No, but it does make that analogy non-universal. Disregard this if you were being metaphorical or otherwise abstract.
could you elaborate? Im not quite getting the connection to aphantasia - not to be antagonistic, im genuinely curious
@@howyay Your not being antagonistic at all, I used aphantasia because its widely known and a good starting point since people with aphantasia aren't fundamentally different while still demonstrating the fact that peoples ability to imagine can vary. it itself isn't relevant and I also forgot to mention anything below a 5 is no longer aphantasia
what's the connection between the video and Aphantasia?
@@davidhuculak1099 the way he described the shader at 0:14
This video was really well made
Is there a dithering technique where you just randomly choose any pixel to be black or white, weighted by its original shade? It seems like it would be a fast technique.
I'm sure this would work for a single image, but for a video, any shade that has 50% chance to be black or white would flicker like crazy, as every frame it would need to randomly determine it's color based off the weight
Would there be a way to get a smoother newspaper halftoning effect using some antialiasing?
We see in the video some artifacts because the matrix doesn't tile properly. It should be possible to fix that with better values. I don't think AA is required, as AA would defeat the purpose of dithering (we're using two colors only)
Imagine a game made fully rendered with dithering. Would make a cool horror game with retro vibes
check obra dinn
return of obra din
How did you know to use Gamma Correction or to multiply by a constant, was that something you knew about already from video game graphics or something else?
I knew about gamma correction from taking a computer graphics course. I knew I needed to use it because the output was garbage. The multiplying by a coefficient was something I came up, a bit by trial and error. It just worked and looked good.
Wish there was a proper way of doing the Floyd method in parallel, I don't like how Bayer ends up looking
really nice project
The C++ engine-in-a-weekend Chad strikes again
Amazing video, congrats! It feels amazing to see others building on something I created, thanks! :)
The level that i want to reach
you have a french accent
I liked the "I use Arch, btw" reference. Nice. Very nice work for 48 hours... I would of just coded a very simple platformer engine, but I'm pretty simple. I think my favourite part was the collision detection/physics. I've found 3D collision to be quite the pain to debug, so I really like how you simplified it to what you specifically needed for the project. Very neat :D
i'm currently thinking about building my own platformer engine.. and let me tell you i wish i could call myself simple for doing that! physics is pretty hard and so is good movement. good luck with your projects, internet stranger! :3
Getting into graphics programming is a humbling experience to say the least
If I wanted to make a engine like the build engine but able to use 3d models like quake or heretic 2. What would be the way to start for a complete newbie? I want to make a retro shooter but without all the bloat that some game engine come with lol
Assuming you know C++ well, OpenGL is the best graphics api (to learn graphics programming) in my opinion, it's a bit old now so Vulkan is better but Vulkan should be learned after understanding opengl.
@@hexeldev alright, thank you
Bro is that even possible
Yo, nice KDE Plasma setup btw. I love the Sweet GTK theme.
Legendary bro🎉
You got a new fan lol. I never actually implement shadow myself. Looks cool I have to try it some time
as a beginner, this is terrifying me
I’m taking c++ in college rn and I. Honestly love it I hope to be as good as this one day
What operating system does he use? Really cool
Arch Linux
And here am I, struggling with collision algorithm 😂
13:39 Same problem every time 😄I'm always surprised by the fact people still use Windows ( I use Fedora most of the time, sometimes - Ubuntu )
6:05 "All ideas we're pretty bad" I like all of them, the most meta slap joke would be 6 by forking an open source chess game and changing 1 line
or "roles reversed: the player writes the game"
Let's be perfectly honest here, you were 'very, very well prepared beforehand' here ;) Still, huge kudos on showing how games used to be created. Infinite kudos if you could do this in 100% assembler!
Bro what Linux distribution were you using
Arch Linux (btw)
Nice
Also what gui did you use?
@@Tefyer do you mean desktop environment? KDE
bro went from an orange triangle to a 3d masterpiece