How I created an OpenSource 3D game with @threejs and MML while live streaming the development of the entire game in a way that it could be watched inside the game itself 馃
Time stamps:
00:00:00 - Intro
00:00:18 - The game engine
00:02:06 - The MML documents
00:04:06 - multi-player sync
00:07:58 - memory game example
00:09:20 - client-MML communication
00:10:50 - reusability and composability
00:12:06 - MML tags and attributes
00:13:32 - interoperability
00:14:11 - the platformer game
00:16:15 - more MML tags and attributes
00:18:16 - let鈥檚 write a game
00:24:52 - 3d objects with primitives
00:33:41 - creating interactive blocks
00:41:29 - creating click event handlers
00:44:30 - creating animation functions
00:51:25 - the game step function
00:59:22 - checking states for victory or draw
01:03:42 - creating display labels
01:15:16 - the reset game function
01:17:29 - the finished game
01:18:50 - final considerations
If you liked the project, please also follow these legends:
@MarcusLongmuir : the father of MML;
@MorgeseSacha and @deej_io : my buddies at the MML Team;
@RJFWhite and @HermanNarula : creating the craziest possible shit you can imagine (and some you can't even imagine yet) at @Improbableio
Replying to @AkitaOnRails
Eu investi um fim de semana ou dois olhando pra esse vespeiro, e um launcher 茅 sim uma ideia vi谩vel e interessante.
Dentre os problemas mais complexos que encontrei, a falta de padr玫es nos jogos daquela era 茅 o pior deles.
Um dos exemplos mais trabalhosos que eu tive que resolver que parecem triviais mas n茫o s茫o, foi lidar com o mouse PS/2 (as implementa莽玫es da 茅poca lidavam com interrup莽玫es e incrementos de posi莽茫o, enquanto nossos padr玫es atuais lidam com posi莽玫es absolutas do ponteiro em rela莽茫o 脿 viewport). Resolu莽玫es diferentes, dois estados de cursor independentes, convers玫es assim茅tricas, etc. 脡 um problema n茫o apenas espacial, mas tamb茅m temporal.
Replying to @andreisurugiu_ @thdxr
Generate your TTS with timings (you can do it on the cloud through ElevenLabs or through local engines like Kokoro, Chatterbox, etc.).
Then I created an aligner (runs in a background worker). Every chunk of audio goes through it, and it uses a speech recognizer with a pronunciation dictionary to time each known phoneme like "m", "ah", "s", "o" (known means that I have a measured mouth shape for it).
The mouth shapes' weights were measured with nvidia's Audio2Face, and I composed a pre-computed table.
The player reads the audio clock and is responsible for lerping the mouth shapes' weights over time, overlaid on top of the current facial expressions (which are driven by tags between [square brackets] my agents generate for each sentence of their responses.
Replying to @MrCollison @levelsio
What really bothers me is that the X API was never that expensive for genuine use cases, and the spam-bot problem was never solved.
In read-only mode, the API would be a fantastic way to keep up with current tech trends and news (which is hard to do these days), but their new pricing model makes it prohibitively expensive.
Replying to @dhh
That wouldn't be a big problem, cause we all perceive things differently. What bothers me is that most of them tend to make things sound different from **what they clearly see they are**. Disingenuity matters the most.
Replying to @AestherML
People have a hard time believing me when I say GPT-5.4-mini is much better than Luna, but it is.
Luna is 7.5 to 9X cheaper tho, but it's a shitty model.
Replying to @thdxr
webgpu+compute shaders and/or a razor blade. easy
Replying to @thdxr
Awn. Thanks, man! You should see the experiments with Metahuman models.
I still haven't solved hair properly, so the nightmares they give me are just 馃槞馃 impeccable
Replying to @thdxr
I know this is a particularly creepy character I'm using right now, but I'm having a lot of fun with lip-sync and giving agents a face.
Replying to @cfcosta_ @sseraphini
Sem tempo irm茫o. To ocupado tentando encontrar novas formas de pagar mais imposto.
Replying to @cfcosta_ @sseraphini
Qualquer um 茅 menos comunista do que eu.
To nesse exato momento lendo teu tweet e socando uma bronha, de olhos fechados, pensando sobre a propriedade coletiva e os meios de produ莽茫o.
Replying to @cfcosta_ @sseraphini
Quem 茅 Ian Neves e por que eu deveria me importar?
Qwen 3.8 27B is amazing. But it absolutely needs fine-tuning for reasoning effort
The `Actually,`s and `Hmm,`s make the model blow up second-guessing itself
And yes, I'm aware of ThinkingCap, QwenPi, and Swift 1.5, and their respective approaches.
I know it can be better tho.
Replying to @Andersonmancini
I have the same issue. I'm working on some "retro-revival games" in my free time, and I cannot finish them properly cause I waste too much time playing LOL
Having big problems finishing this one 馃槄
mgz.dev/games/tankz/play
Replying to @Andersonmancini
I absolutely fucking LOVE this! So much personality! I really love your work dude, but this is one of my favorites!
Replying to @TheRastrian
Treat and happy too, dude. Can't complain 馃檪
Replying to @theo
I understand your frustration, and I was genuinely upset chatting with a friend about it last week. What I finally asked to settle the direction was, albeit hyperbolic, "can this run on a fucking Playstation 5?" because "consumer hardware" seems to have lost meaning somehow.
Replying to @EraldoGomes16 @RogerioVilela
Como se vendeu? 脡 um epis贸dio de podcast cara, n茫o 茅 um interrogat贸rio. Pol铆tico 茅 liso. Tu queria que ele fizesse o que? N茫o deixasse o cara falar? Batesse na mesa?
O Vilela botou papo na mesa (como o sigilo, por exemplo) que a maioria dos entrevistadores merd玫es do Brasil n茫o botaria.
Eu TAMB脡M queria que ele tivesse pegado mais pesado, mas julgar de fora quando n茫o 茅 tu fazendo a entrevista 茅 macio.

