Tumgik
djskiskyskoski · 10 days
Text
Tumblr media
Might as well show off what I've been doing.
I've had an idea for this render for months (ever since I made the olmai) and I knew it was never gonna get done since I had high expectations. The main idea was a felled tree and the underbrush growing from the newfound sunlight.
The biggest hurdle has been the geometry nodes; which is ever so similar to shader nodes, but isn't. This means that I have to relearn some syntax tricks and have to forego a bunch of debugging tricks (this is the bigger issue). I have slowly been able to get a structure down and finally have something good to show for it.
Flowers in nature (and my backyard) tend to grow in clumps as they slowly spread out. This was the mainfirst step in making a good underbrush and was completed using voronoi diagrams. There's still a good amount of tweaking (there's suppose to be more colors) but the main process is finished and I just need to mend parameters until it looks good.
Up next are the shrubs and juvenile trees sprouting. This is a lot more work (see my previous works on geo node trees) which I may skip or cheat in some way. After that is lighting and touching up the main tree. Really not that much work, but it's still goingto take a bit as I figure out how I want it to look.
Please keep me accountable
1 note · View note
djskiskyskoski · 28 days
Text
Animation of an old shader of a terraformed mars.
Drivers are bad. A lot of the values and lengths need to be tweeked to make the transitions smoother. I probably also would want the entire animation to be longer to allow for slower transitions in certain parts. The only issue with this is time. This render took nearly 24 hours and I really don't have the patience right now to deal with the small tweeks needed to adjust values.
Thats it for now. goodbye again for another 3 months as I dig around for another thing to make.
5 notes · View notes
djskiskyskoski · 2 months
Text
Some things are meant to be mimic'd and never solved.
I want to solve my own grass models, and self-buckling to make the grass blades flop correctly involves what I like to call 'puppy killing functions'
0 notes
djskiskyskoski · 2 months
Text
Got the black hole shader running in browser using webGL. The most taxing part is loading in the skybox (its only a 4k image which is why its a little grainy) which is all of the load time. The most taxing part mentally was a normalize that I missed which I wasted ~10 hours trying to find.
I think this is it for the shader. I've rebuilt it in 3 different engines for various projects, and webGL truly causes the most pain.
1 note · View note
djskiskyskoski · 3 months
Text
Tumblr media Tumblr media
It's been a bit.
I haven't had a lot of inspiration, until I was browsing I find one image and think to myself, "Hey, I can make that with math." This is the wrong decision to make.
I solved two things with this. The waves on the sun are ment to mimic heat haze, which I think wasn't done too well. The main idea of it is to do a lot of small shifts using noise across as many layers as possible. In theory I should be able to minimize the layers down to one, but the noise I was using got too confusing for me. In the future this is something that I would want to work on. I probably need to use a lot more reference materials and stare at image for a lot longer (heat haze is also turbulence so there is no structure, SO MUCH FUN).
Part 2 was the clouds. I added the clouds into the skybox which allowed for some faster run times and to help with some problems of the far clipping plane. For clouds I always had to do some weird hacks to get the clouds to go off to infinity while still looking good, which was never ideal wto what I wanted it to look like.
I basically did a stereographic projection, but just shifted in some weird ways, this let me use the sky box and its spherical coordinates to point to a 2d plane at some height and build the clouds on that instead. There starts to get some problems with floating point precision along the horizon, but its pretty easily hidden and better that anything I could do with the problems of the clipping plane.
I did run it through an art filter afterwards just to see if it looks better. I'm still unsure which one looks better, but I think the paint filter adds some nice touches in the end.
I would post nodes, but there's so many different parts to this that I dont want to :/ If you want them then just ask when my brain has recovered.
1 note · View note
djskiskyskoski · 3 months
Text
Tumblr media
Reinventing hitboxes.
I may have an idea for a game, and because I'm stupid I started looking into modifying hitbox algorithms. The main goal is to still reward grazing shots, rather than an all or nothing method that most systems use already. Basically I'm trying to reinvent the shotgun, just without pellets.
The math does this pretty well. Currently its built to create a cylinder, but some tweaks and scaling can change it to be cone shaped. The final output is a vector that gives magnitude and direction to the closest point to the pellet, and with this I could start to work backwards and start building a hitbox algorithm where I can solve for damage from this vector. And because it holds direction, I could account for headshot multiplyers and other various scalings.
The image above uses per pixel positioning, but in theory I could do all the math from a singular position coordinate.
Very early steps. I still have to move a lot of my ideas off of blender and onto a dedicated engine.
1 note · View note
djskiskyskoski · 5 months
Text
Tumblr media Tumblr media
USP-S | Cosmos (Updated)
Finally got this stuff done. I have starter python scripts for this update since september, but the orignal design come from far before that.
The constellations are procedrual. There's some recent posts about building the code to allow this to happen. Under that is some stars and noise that I was also able to refine with data that I found.
There's still a few small things that need to be fixed. Textures should be tileable (left side to right side and top to bottom should be seemless), but this one isnt. I need to do a couple things in order to tile the image.
Thats more work though. I think I'm done with this design for a while.
2 notes · View notes
djskiskyskoski · 5 months
Text
Tumblr media
Constellations on a tiled map
Suprisingly this part took a while. the distance function on a repeating image like this is a little tricky, and drawing the connections has its own problem. If I need to draw a line between 2 points on opposite sides of the image it requires a couple lines to shift the destination over and include some modulus functions to move points around.
The stars themselves are what takes the longest, mostly because I dont want to do multiprocessing the right way. This means that each pixel (4096*4096=~16 million) needs to check if it is within range of each star (~700). I could probably speed this up a little bit, but I really should learn multiprocessing.
I did attempt to build this as a shader in blender. It immediatly broke as I had too many color inputs which I'm pretty sure 99% of blender users will never see.
I need a tileable map, compared to the skybox I made before, because thats how textures are created. In the end I really want a good looking skin for coutner strike involving constellations.
Tumblr media
It's a good base, I just need to add some more since the skin looks pretty bland currently. Luckily I already have some skins and have built shaders of stars and dust clouds so this part really shouldn't be that difficult.
1 note · View note
djskiskyskoski · 5 months
Text
Tumblr media
Snowy Path
This render is almost all about getting trees and the camera to work the way I want to. I recently made a post about the trees and some of the pain from that, but I'm happy enough with those for the moment (and have some neat ideas for pine trees maybe). The basics for the trees involve curves and finding curve endings and building curves off of those points and etc.
Depth of field was way too much trouble for me. I think its something with the scale, but regular numbers just didnt like working and had to go to some unatural focal lengths in order to get the blurring effects that I wanted (the term for it in photography is bokeh). It's still not the best, but at this point I don't think its worth it to build anything more.
I might start work on the next thing right away (that pine thing), so I might be able to get something done sooner rather than later.
1 note · View note
djskiskyskoski · 5 months
Text
Tumblr media
This isnt done yet. But man is it close.
This project is a hodgepodge of stuff I have lying around. The snow is from last years render and the lights were from a scrapped project that I never finished. But the trees.... oh the trees.
Tumblr media
I have been trying to make a good looking tree for around 2 years now, and this is the closest I'll get for now. It's a ton of geometry nodes involving curves and offseting curves and placing new curves within old curves, and its still not that good. Luckily I have a ton of snow bluring most of the trees so just the shape needs to be correct.
I just need to fix a few small parts on the trees, they are far too angular and I think I have some ideas to smooth them out. After that adding leaves could be a good idea, but winter is setting in so I have no reason to yet.
Expect a small update with a final render tomorrow. Those branches on the edges are messing with me and I want to make them better.
Might also draw some figures walking down the path. But I dont want to draw and it will take me days with how I draw.
1 note · View note
djskiskyskoski · 5 months
Text
Tumblr media
I learned python scripting in blender. Not worth it.
I want to add true stars into my skybox render, and the most accurate way I could think of was what I had done in blender to this point. Only problem was the points were defined beforehand, meaning a csv was needed to be imported and nodes needed to be built.
I could do the inverse, get the stars from blender then draw them together.
All that needs to be added are 2 more random numbers, one for the size of the star and another for the color. Ill probably write those to images and export it with the constellation map.
1 note · View note
djskiskyskoski · 5 months
Text
Tumblr media
Zoom in.
Tumblr media
The constellations are done and create a good enough skybox to be used in any 3d software.
This most recent update fixed some issues with the paths connecting. Sometimes verry accute angles were forming in the graphs which I didnt want and took shorter than I thought to fix.
Tumblr media
Now I compare candidate paths to all other paths to make sure no 2 end up close to each other. Seems to work for now but I know that something will break.
Also, here's the code. just run build.py.
Plans for the future:
I already have a lot of experience building starfields in blender so I know what to do. It's more that fact of doing it in python in a reasonable time that makes me not want to do it (creating circles of various sizes in this projection).
I could just build it in blender and export the stars out, that sounds like the smartest way to do this. I just need to import all the values and do a bunch of work with that.
Tumblr media
The poles also have some thining. The lines are constant width, but there are more pixels(in a weird strecthed pattern) meaning that any full lines appear not as full as around the equator. If I do fix this, I should also do some anti-aliasing.
7 notes · View notes
djskiskyskoski · 5 months
Text
Tumblr media
Part 2 for today, solved it to my best ability.
The only thing I added was the ability for the graphs to have cycles within them. I compare the distance of one star to all other stars in teh constellation. If its the shortest path, it should already be drawn from my previous work. This distance to every other star is compared to the shortest route, and if it reaches some threshold, It will be drawn.
These thresholds can be changes, but I did 1.5 time the shortest path. I also checked to see how close this new path gets to the original shortest path, if these 2 stars are less than ~.8 times the shortest path I do no draw it. This last step is just so that super acute triangles are no created, but it probably isnt necessary.
It also takes like 2 minutes to run. Almost all of this is through building the constellations and I know for a fact that I can optimize this down (its about O(n^3) for the 3 people that know what this means). The problem with this is that I need to learn graph theory methods and I'd much rather take 4 shots of malort than learn graph theory to this extent.
I'll probably publish this junk to github soon.
Tumblr media
This is a much better start.
In my previous attempt I did a lot of work using voronoi diagram, or at least the ideas of it. There was also an attempt with delauney triangulation which went as well as I thought it would go.
This try seems much better from the start as it's just a greedy algorithm. The steps for this are much simpler:
1)set c stars as constellations. These are the seeds that will be grown upon
2)find the nearest star to a constellation that is not yet in one. add it to that constellation and draw an edge between the two.
3)repeat n times (n-c i guess).
The issue with this method is that no loops can be in the constellations, meaning that every constellation can be considered a tree for graph theory purposes. In reality this isnt the case and adding closed cycles to certain constellations would make them look better.
13 notes · View notes
djskiskyskoski · 5 months
Text
Tumblr media
This is a much better start.
In my previous attempt I did a lot of work using voronoi diagram, or at least the ideas of it. There was also an attempt with delauney triangulation which went as well as I thought it would go.
This try seems much better from the start as it's just a greedy algorithm. The steps for this are much simpler:
1)set c stars as constellations. These are the seeds that will be grown upon
2)find the nearest star to a constellation that is not yet in one. add it to that constellation and draw an edge between the two.
3)repeat n times (n-c i guess).
The issue with this method is that no loops can be in the constellations, meaning that every constellation can be considered a tree for graph theory purposes. In reality this isnt the case and adding closed cycles to certain constellations would make them look better.
13 notes · View notes
djskiskyskoski · 6 months
Text
Tumblr media
Is this good? I'm not sure.
Last post I made I said that I needed to solve a bunch of junk on the 3-sphere. I ended up solving that stuff, almost all of it.
What is this? its a poor model of constellations. My idea is to have a bunch of points on the sphere, group the neighbors into constellations, and then solve for the connecting edges to get something that looks nice.
The points and constellations part was suprisingly easy (uniform random points in 3-space mapped to the 3-sphere is uniformly random across it as well). Drawing the lines as well wasn't that bad. The only problem now is defining what edges need to be drawn.
I'm Trying something called delauney triangulation, but I need it to be done in spherical geometry, meaning that most of the literature and algorithms aren't useful to me.
Tumblr media
My idea involves taking the 3 points of the triangulation to build a plane and check if a point resides in the purple region. If a point does then I know this triangle is not optimal and shouldn't be drawn. As seen by the initial image something about this is broken, but I really dont know what.
1 note · View note
djskiskyskoski · 6 months
Text
Tumblr media
Stars that almost look good.
In my ever continuing search for a good sky map I think that I am nearly there. The difference with this one compared to previous attempts is that I actually took physical data into account.
I was able to find some data on frequency of stars by apparent magnitude, and with some work with desmos, I have something as close to the night sky as I have gotten.
The last problem that I need to solve is dimensionality. My random points are being set in 3-space, projected onto the 2-sphere, and then the calculations begin. Having a way to distribute the points over the 2-sphere directly would help with some small problems of over/under values that pop up.
Tumblr media
It does work on a 2-d plane though. For many situations this is good enough, only the sky box and some tiling functions I have will have problems with the 3-space issues.
It's probably not solvable without some direct coding (ew) so I think I'll stick with the 2-space function and see what goodies I can get out of it.
I just need to get creative now. There's constellations in this sea on randomness and I need to get it out.
0 notes
djskiskyskoski · 7 months
Text
Tumblr media
Sunset Mountains.
Better than the one before. Moving the camera around and adding some foreground definitley does help, but at this point if I want to omprove it I need to do a lot more modeling (which i dont want to do).
the mountains aren't as crunchy as I want it. Zooming in on the ridges show the smoothness that I have tried to remove, but any attempt at changing it means I need to fully render the scene again and that takes far too long.
The sea could be affected as well, my friend wants a pirate ship in there. If anything I'd dtry to get an island off the coast. Some birds or clouds in the sky could also be pretty good.
1 note · View note