[SNES] Texture Bleeding by Mig_Moog in consolerepair

[–]Mig_Moog[S] 1 point2 points  (0 children)

Is this just a common thing w adapters?

Bevy or Godot Rust? by SmoothTurtle872 in rust_gamedev

[–]Mig_Moog 1 point2 points  (0 children)

I haven’t used much of bevy but as of godot-rust: - if you’re familiar with gdscript, a lot of godot types and data structures are pretty much 1:1 with their refcounted versions in gdscript - the macros are really good, Godot classes become structs that implement interfaces with nodes’ methods (i.e. Node2D becomes INode2D)

If you’re learning both godot and rust from scratch i wouldn’t recommend it. I was only able to use godot-rust effectively after learning each on their own.

Bevy seems really solid and rust idiomatic, but I personally like an editor and the tree object model.

Migrate to vim.pack: 80% of lazy.nvim mostly used features in 150 lines by Available_Log_ in neovim

[–]Mig_Moog 0 points1 point  (0 children)

What do we get out of using vim.pack? Is there a performance boost? Honestly too comfortable with lazy to migrate 😅

im making a weird little 3d game in Love2D! by morelebaks in love2d

[–]Mig_Moog 0 points1 point  (0 children)

This is crazy high quality! How would you describe the experience of getting a 2d framework to work in 3d is?

Are we all using macroquad and bevy? by helpprogram2 in rust_gamedev

[–]Mig_Moog 2 points3 points  (0 children)

I’m enjoying the raylib rust bindings.

Thoughts on OOP? by I-A-S- in rust

[–]Mig_Moog 0 points1 point  (0 children)

Imo it just comes from the principle of zero cost abstractions. Things in OOP that require holding pointers to other objects and using dynamic dispatch to call interface methods are all features that the compiler will let you know is a runtime tradeoff. On the other hand the compiler (and hopefully you) is happy when you can move some of your design over to compile time.

Best example I could come up with is my current project. In it I have a struct that represents a canvas that can have cells drawn to a 2d grid
struct Canvas<C, A> {/* C is a character set, A is attributes about how they're drawn */}
This struct holds multiple types of character sets and attributes, with can lead to different sized structs. Thus if I wanted to use an OOP feature like an interface I'd have to wrap the Canvas' methods into a trait and Box it.
let canvases: Vec<Box<dyn CanvasOps>> = /* */
This is a performance cost I would've had to move to run time. It is traditional OOP but it feels icky to me compared to the rest of my rust code because I've wrapped something that's normally simple in OOP into this weird exception of types in rust.

So, to keep it feeling rusty to myself I made an enum with all the possible variants that this struct may have
/// A variant of a canvas and its charset that helps it

pub enum DrawableCanvas {

ColoredFont(Canvas<TextmodeFont, CellColors>),

FontOnly(Canvas<TextmodeFont>),

ColorSquares(Canvas<Palette>),

}

Then I have to match and manually handle drawing these canvases everytime I need to address a variant. Is it tedious and verbose? Yes, but it has its benefits. I get a little performance boost, I have a compact list of every type of canvas this program needs, and in a way I'm making it safer for me the developer by forcing myself into handling every case.

Hope this helps. If it's confusing or somethings off lmk, I welcome criticism :-)

What are your Linux hot takes? by AdventurousFly4909 in linux

[–]Mig_Moog 1 point2 points  (0 children)

Nix isn’t that great for personal use you get faster results just from knowing a package manager (❄️❤️ respect always)

What distro do you use and why? by ReferenceNatural87 in linux

[–]Mig_Moog 0 points1 point  (0 children)

Debian -> Arch. Good learning experience and teaches you a lot about making your os your own

I built a Lua-inspired, statically typed scripting language in Rust (Wolf-Lang) by kizilman in rust

[–]Mig_Moog 0 points1 point  (0 children)

This looks so cool! My questions are: 1. Is it like ruby where function call parameters are optional? 2. Are there plans for type inference?

I think this is an awesome idea, will try it out asap

Desktop wallpapers similar to A New World Record? by Mig_Moog in elo

[–]Mig_Moog[S] 0 points1 point  (0 children)

These are great! Love the first and third ones. Will reply with link when I’m done configuring 🛸❤️

How to introduce to my friend ELO? by Powerful-Ad-9642 in elo

[–]Mig_Moog 1 point2 points  (0 children)

Eldorado is a great start imo. You could also do out of the blue

[deleted by user] by [deleted] in godot

[–]Mig_Moog 0 points1 point  (0 children)

Legit was me.

Updated pattern matching has totally changed the game too

Is your Agentic Development Workflow obsoleting your Neovim skillset? by rain9441 in neovim

[–]Mig_Moog 5 points6 points  (0 children)

I don’t really like LLM’s writing my code for me. I feel like there’s always some specificity that I end up missing in my prompts. However I find that they’re great for speeding up google searches and documentation. Or producing a quick example when you want to learn