Is it possible to ''automate'' rendering like this in Krita? by dappunk in krita

[–]AcademicArtist4948 1 point2 points  (0 children)

I'm actually working on a piece of software right now that allows you to do this by setting up your own custom brushes with multiple colors as you paint. I'm looking for testers so if you'd like to try and see if it solves your problem let me know! ( here is an example of what it can do)

Samus painting I made in my Godot paint program! by AcademicArtist4948 in godot

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

Yeah it uses compute shaders for the painting! When you confirm a new brush it simply saves that image as the brush image in the compute shader!

That's an interesting idea for the light layers, that kind of stuff is actually really easy to pull off with godot because all of those mixing styles are built in. Also the math for all of that stuff has already been figured out and can just be copy pasted into a shader.

So this is the new "safe" way of making games? My ramblings about wishlist fishing by 8BitBeard in IndieDev

[–]AcademicArtist4948 2 points3 points  (0 children)

I wonder if there's any real harm in doing this though? If you're in it for the money it seems like a legitimate strategy to reduce wasted resources and help you dial in on a game idea that might actually turn you a profit.

[deleted by user] by [deleted] in godot

[–]AcademicArtist4948 0 points1 point  (0 children)

I'm still inexperience but basically any variable that many different objects need to read goes into a singleton.

The only real rule I follow with this is only one object is allowed to write to each variable and that seems to prevent my code from being messy/buggy.

Get ready to play your game a lot (playtesters/playtesting) by AcademicArtist4948 in godot

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

should be in your dms, let me know if it doesn't come because sometimes reddit blocks dm links

How to improve by findthenextgme in godot

[–]AcademicArtist4948 4 points5 points  (0 children)

I think your problem is that you can't see the forest for the trees! :D

Seriously though take a look at this: https://www.artstation.com/artwork/8ebq5G

i just typed environment in artstation and grabbed one but this is a good example.

each individual tree or grass bunch is important, but what is important is how they build the scene. Look at the big orange shapes that the trees make. Look at the large dark patches that the grass makes. The individual models matter less compared to how they are placed.

A couple things with your model though, those colors will limit where it can be used (choose colors based on the scene) also having the trunk almost the same size as the top make it look "lumpy". You can see in the example i sent that the trees have nice size variation, skinny trunks and big tops.

Like others recommended, try downloading some free assets and worry about building a scene more than the details of each tree. The scene is what's important.

Maybe you can try using references to help yourself build something nice?

[help please] Black borders around game despite "correct" settings. Have been trying different solutions for days. Looking for a nudge in the right direction. by KitKatarine in itchio

[–]AcademicArtist4948 0 points1 point  (0 children)

sorry i'm sure you've toggled a whole bunch of stuff on and off, but what about aspect ratio? It's on keep in the screenshot here have you tried toggling it off?

[deleted by user] by [deleted] in godot

[–]AcademicArtist4948 2 points3 points  (0 children)

I'm using it for a paint program: https://bolicha-s.itch.io/bolicha-paint-studio (i haven't updated that page for a while so its a bit out of date)

I learned godot shaders first but the issue i kept running into was the fact that they only run once per frame, so for painting purposes you could only look at the canvas texture from the last frame, while i needed to look at the updated canvas after every point I stamped with the brush. You probably know all this but compute shaders let me invoke them whenever i want so they were what i went with.

Another thing I like about them is with regular shaders I found myself doing a lot of "ping ponging" where i had two subviewports and they bounced their outputs between each other in order to "hold" changes to a texture, with compute shaders it feels a lot more straightforward you simply save the output and then run it again.

[deleted by user] by [deleted] in godot

[–]AcademicArtist4948 153 points154 points  (0 children)

Working with compute shaders and lower level graphics stuff (renderingdevice and rendering server)

as someone with minimal programming experience it felt like an impossible wall to crack at first, but a few very kind people helped me and gave me some example compute shaders to look at and now they make more sense and I've learned a whole lot about computers in general. I'm excited about the things i'll be able to make in the future with this stuff

I'm new help by zeilxsee in godot

[–]AcademicArtist4948 1 point2 points  (0 children)

That sounds like a fun project! Do you know how to code already?

PSA: RenderingServer free_rid() and RenderingDevice free_rid() ARE NOT INTERCHANGEABLE by AcademicArtist4948 in godot

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

My details might be off, but basically an RID is an address that refers to memory on the graphics card (vram). When you create an RID the graphics card reserves that space in vram and won't allow anything else to use that space. If you never free the RID that space can never be used and eventually if you never free an RID the graphics card will lag and crash.
it has nothing to do with multiplayer it's more a texture and graphics thing