7 ms·
“Bad Apple” in Minecraft
- pzmarzly 2y agoI learned way more about computer graphics here than I expected. Kudos to the author. One nit: the picture that the author called "The sun" is actually Eirin [0] looking at the moon. In that scene [1] she's reaching for the moon, where she was exiled from, only to hesitate and retract the hand. In the next scene, Kaguya [2] also reaches for the moon, but does not hesitate. I'm not sure what the symbolism here was supposed to mean, as according to Touhou wiki it was Eirin's plan to steal the moon. [0] https://en.touhouwiki.net/wiki/Eirin_Yagokoro https://en.touhouwiki.net/wiki/Eirin_Yagokoro [1] https://youtu.be/FtutLA63Cp8?t=99 https://youtu.be/FtutLA63Cp8?t=99 [2] https://en.touhouwiki.net/wiki/Kaguya_Houraisan https://en.touhouwiki.net/wiki/Kaguya_Houraisan
- tmtvl 2y agoYou may have misread, the wiki says her plan was to 'seal', not 'steal' the passageway between Earth (or Gensokyo) and the Moon. Eirin deliberately chose to break her connection to the Moon in order to protect Kaguya.
- pxc 2y ago> One nit: the picture that the author called "The sun" is actually Eirin [0] looking at the moon. I always think 'the sun' when I see it because of this goofy video: https://www.youtube.com/watch?v=ReblZ7o7lu4 https://www.youtube.com/watch?v=ReblZ7o7lu4
- ConcernedCoder 2y agoACHIEVEMENT UNLOCKED: "Get'r Done" -- The ability to interate and solve individual hurdles and issues within the constraints of a system to achieve a grand idea.
- SCUSKU 2y agoI don't really understand how or why Bad Apple is becoming the de-facto graphics rendering "hello world" but it's fun to see in real time. I came across this demo which uses Bad Apple for demonstrating high FPS hypermedia: https://data-star.dev/examples/bad_apple https://data-star.dev/examples/bad_apple
- nomel 2y agoI think it's simply that it's (mostly) black and white.
- jabroni_salad 2y ago2 reasons: 1. The creator is extremely cool about remixes and fanuse. In many ways touhou is the OG modern internet fandom in a way that previous ones weren't. Your bad apple video will not be taken down even though it has the same audio as all the others. 2. The shadow puppet format is recognizable at seemingly any resolution. I have seen examples in a 3x3 grid even. On top of that, it only has two colors (black/white, 1/0) so its dead simple to convert the video frames into any other format you can imagine with only a 'hello world' understanding of what you're doing.
- layer8 2y ago> its dead simple to convert the video frames into any other format you can imagine Maybe read the linked article about that. ;)
- deleted 2y ago[deleted]
- dylan604 2y ago"It’s grayscale, not just black-and-white." Just in case reading TFA is too daunting for those only reading comments
- layer8 2y agoI was alluding to the difficulties of frame-rate conversion, dithering, and compression artifacts in the original source being amplified by the conversion. Grayscale by itself isn’t the issue.
- dylan604 2y agoBut the person you replied to "it only has two colors (black/white, 1/0)" which is what I was referring
- vessenes 2y ago> And… that’s it? Looking back, the result looks almost trivial to achieve, which raises the question of why no one has done it before. Umm, wow. I do not share that reaction to the work. This is an awesome dev log and closet lesson in splitting up what seems like an insurmountable task into nearly-impossible-but-doable chunks. Love it. For reference, this renders Bad Apple at 20fps in vanilla minecraft, with only a custom texture and some custom object definitions changed to allow more textures. The rest is (very exotic) vanilla.
- scotty79 2y agoI'm mostly impressed with the display of knowledge visible in rejected solutions.
- MrPowerGamerBR 2y ago> Resource packs can change the music played by discs. The duration of the music disc stays fixed even if the audio is replaced You can change the music disc duration with data packs since Minecraft: Java Edition 1.21, you can even add new music discs definitions without replacing any of the vanilla music discs. I know that one of the rules was "no data packs", but hey, it is a cool thing if someone doesn't know about it. (also, in my opinion this wouldn't break the "no data packs" rule, because the "no data packs" rule seems mostly related to not using data packs to set blocks in the world)
- floydnoel 2y agoOff topic: I was excited to see the demo video, but when I pressed play YouTube accused me of being a bot and refused to play. Apparently it protects their community. There are some privacy respecting alternatives, it might be good to see those gain traction. I'm going to try to do so myself, if i ever make or post a video!
- tombert 2y ago"Bad Apple on all the things!" is one of my favorite geek trends. I remember the first time I saw it on the Genesis/Mega Drive I was astounded that such a thing was possible on such weak hardware. I love seeing the new ports that people make for underpowered stuff. I'm afraid that I'm not smart enough with low-level programming to ever do one myself, but I have a lot of respect for people that can.
- korhojoa 2y agoI thought that this was really impressive https://youtu.be/WPUYjDNks9Y https://youtu.be/WPUYjDNks9Y
- pkilgore 2y ago> Looking back, the result looks almost trivial to achieve I wish the author was a bit more gentle on herself! What a ride.
- thaliaarchi 2y agoThat feeling seems common in hindsight. Everything seems easier, once all the problems have been solved. Related, I enjoy the author's sense of humor: > I made a prototype and, lo and behold, it was in fact slow, as predicted. (I’m smart.) And in another article[0], describing an inefficient collision algorithm: > Mojang’s decision never crossed my mind. I guess I’m not a real programmer. [0]: https://purplesyringa.moe/blog/ru/minecraft-compares-arrays-in-cubic-time/ https://purplesyringa.moe/blog/ru/minecraft-compares-arrays-...
- treyd 2y agoPrior art is missing the one I worked on, using Sheep and Bukkit plugin, although that might be considered out of scope since it's not entirely in-game. In any case this is great work! I find it hard to imagine anyone improving on it.
- menx 2y agoAlso check out Bad Apple but it's a Minecraft world: https://www.youtube.com/watch?v=RN3QW9SVnds https://www.youtube.com/watch?v=RN3QW9SVnds
- sylfn 2y agoThis is literally in the post
- NooneAtAll3 2y agoBad Apple played on Minecraft sheep: https://www.youtube.com/watch?v=tO6sfku_1b8 https://www.youtube.com/watch?v=tO6sfku_1b8
- saagarjha 2y agoKind of amusing how much effort this puts on the actual video itself. When I’m done with implementing a Bad Apple I’m usually too tired to think about dithering or frame rate Instead I just run it though ffmpeg and call it a day.
- saintradon 2y agoI haven't been addicted to Minecraft / building serious redstone stuff since high school. Now I just play a few times a month with some friends when the craving randomly comes back to just build and explore. Looking at the redstone landscape now it has completely changed and it's unrecognizable to me - I wonder if that's how I'll feel as I slowly become a senior software engineer, years pass by and I look at stacks I haven't touched professionally in years and wonder in awe just how rapidly things change in tech and what new things people are creating with it.
- 63 2y ago> it’s even worse: redstone dust is, like, the only component that doesn’t introduce tick delays, but it’s very laggy, because no one at Mojang seems to know graph algorithms. It's gotten much less laggy since the post OP linked to for info was posted, with many improvements in the last 3 years including one very recently. Mojang gets a lot of hate from every direction. It took them so long to make Redstone less laggy because every time they touch Redstone in any way, the community screams at them and any time they do anything other than introduce brand new features the community screams at them so it just wasn't worth it. Getting mad on the Internet and saying they don't know graph algorithms isn't helpful. Mojang has repeatedly hired some of the best and brightest minds in the Minecraft community to work for them (e.g. Panda4994, Kingbdogz, Gnembon) so they do have the technical expertise to do anything they want. What they don't have is infinite time/budget and it turns out that working on a 15 year old Java codebase and a massive multiplatform C++ app at the same time and trying to keep them in sync is really damn hard so can we please give them grace? I'm just tired of so much hate from every direction every second of the day. Can we please just say that Minecraft is awesome? Thanks
- xnickb 2y agoWhy? It is in their power to rewrite the engine (in rust) and make it everything they want. It's not like they care about cross version compatibility or something.
- bonzini 2y agoSure they do. There are people who have taken worlds from 10 years ago and brought them all the way to the latest Minecraft release, and breaking changes are done very carefully. The only two substantial nerfs that I can remember are zero-tick farms and fishing farms.
- sdflhasjd 2y agoStatements like that pop up in quite a lot of programming blogs like these, they used to annoy me more until you realise it's less gloating and more naivety from the 16-21 age bracket with less "professional" experience.
- throwaway918299 2y agoThis boggles my mind that something like this is even possible in Minecraft. I build redstone dust contraptions with my 4 year old and it blows my mechanical engineer father’s mind but this kind of animation is just another plane of reality to me.
- trollied 2y agoNow I want to see this in Factorio...
- thih9 2y agoOff topic, Youtube embed gives me: > Sign in to confirm that you're not a bot While viewing in safari mobile private mode. Same if I navigate to the youtube page. This is new for me. Switching to a different browser (firefox focus) makes that disappear, I can play the video without signing in.
- deleted 2y ago[deleted]
- ezfe 2y agoI've been getting this a lot from embedded youtube videos (not in private mode) over the past week
- efilife 2y agoA woman did this, a rare sight in the hacker community. That's so cool!
- scotty79 2y agoI'm more impressed she's 19 years old. We truly have a new generation of some awesome people.
- kamma 2y agoShe is transfem though, which is not that rare in hacker community.
- userbinator 2y agoAnother one of those riding the fine line between genius and insanity.
- efilife 2y agoDoes it matter? You said that like she's not a woman
- teddyh 2y agoThe common view is that women on average accomplish less (in areas which are publicized) because they are, from the moment of their birth, held back by society, or at least not encouraged to excel in any visible fields of endeavor. Logically, I would assume that this applies less to trans women, depending on their age at transition, and also whether they “pass” or not. Therefore, accomplishments by trans women should maybe not be seen as being as inspiring as should similar accomplishments made by people who were treated as women from birth. (Similarly, I would therefore logically assume that accomplishments by trans men are treated as less inspiring than they maybe ought to be, since, compared to non-trans men, trans men accomplished things despite having lived through more years of society treating them as women.) Of course, this focus on men/women/trans is diverting us all from the topic at hand, which is cool Minecraft stuff.
- nyanpasu64 2y ago>This recursion ends when Minecraft hits a hard limit, which by luck results in a yellow block being spawned instead of a red one. This reminds me of the old update suppression glitch (https://mcdf.wiki.gg/wiki/Java_Edition:Update_Suppression https://mcdf.wiki.gg/wiki/Java_Edition:Update_Suppression), or the trickier population suppression (https://mcdf.wiki.gg/wiki/Java_Edition:Population_Suppression https://mcdf.wiki.gg/wiki/Java_Edition:Population_Suppressio...) which can leave the game engine in a glitched state where blocks fall instantly.
- kmacdough 2y agoI learned most of what I know about computer architecture from Minecraft CPUS. It's great to see this is still around for younger generations.
- packetlost 2y agoIt's amazing how much staying power Touhou has had in internet culture.
- fayalalebrun 2y agoMy favorite dithering algorithm for motion video is Yliluoma dithering: https://bisqwit.iki.fi/story/howto/dither/jy/ https://bisqwit.iki.fi/story/howto/dither/jy/ It is especially useful for grayscale content, as finding the optimal dithering matrix from the available palette is a straightforward exact operation, and the result can be placed in a LUT for real-time rendering. In my opinion it looks much better than bayer or random dithering, especially on gradients.
- deleted 2y ago[deleted]