I posted these recently but it's time for a new pinned tweet, so...
Hi, I'm Gray! I'm an illustrator and technical artist that loves to draw badass women and use programming to create & aid my art.
π Email: gray
@grayolson
.com
ποΈ More:
Alright computer graphics twitter, here's likely the best full-course, intuitive introductory explainer on the core of modern ray-traced rendering techniques I've ever seen, and it has pitifully few views for its quality.
Musings about developing in Rust:
When people start in Rust, they often get into 'fights' with the borrow checker. This can be a source of much frustration, especially for experienced devs who try to use patterns they know from other languages which give them lots of headaches.
Today I spent time optimizing my path tracer for "low quality" rendering so that I can do iterative refinement of scenes.
The image on the left below now renders in ~8 seconds rather than 45+. The image on right is a high quality version that took about 10 minutes.
Alright time to hop on my soapbox real quick.
Graphics friends: we *really* need to do a better job of talking about color. Right now color science is basically a dark art that never actually gets taught by graphics learning resources unless you seek it out specifically.
@law_ninja
@JoshLekach
You can improve your life by fostering genuine connections with people in your life by caring about the things that matter to them.
ππ excited to finally be able to share this with the rest of the community... and to announce that I will be starting
@EmbarkStudios
next week working on this super exciting project!!
First release of our Rust GPU project, build shaders in
@rustlang
instead of traditional HLSL/GLSL! ππ¦ _Early_ 0.1 release & is now open source, hope to build an awesome open graphics+Rust ecosystem, with this as the base and start
@EmbarkStudios
@YGALH
@ThisIsA__
@hangryliving
Moral of the story being: tell your sister that her work is incredibly amazing and that she is amazing, but not because it's good for her age. It's just good art, and she's just a good person. <3
@parisxxo
@shibakid666
@ElleVargaz
@sailordisa
Because "transitioned well" implies that your worth/status as your gender is dependent on how well you fit into traditional notions of how that gender is supposed to look. Telling someone they're pretty is great, attaching the "for a trans person" (in any way) is not
@AnaMerVen
@Sinsorium
@odetomedusa
im so sad that this was not normalized in the culture i grew up in :( cuddling with my parents was always discouraged even from a young age after nightmares...
I wrote a small ray-casting renderer in
@rustlang
over the past couple of days based on
@Peter_shirley
's "Ray Tracing in One Weekend". (thanks
@BelgianRenderer
for the inspiration, would be interesting to see how our implementations varied)
@hustla_bb
@katieguo
i think this is very much a false dichotomy and perpetuates dumb things. lots of sexual predators are, to the outside, seemingly well-adjusted, social, charming people. in fact most of them are. thats how they get people close to them in the first place.
This is super true and valuable, just wanted to add a bit of context from a technical standpoint:
In terms of actual physical phenomena, hue variations come from three very different places and thus you have different "kinds" of hue variation (though they often interplay!) (1/?)
When Iβm asked about how I choose my colors, I always push the idea of straying from neutral colors!!! Locking urself to those base skin tones can make ur portraits look flat, throwing in a lot of subtle hue variations can do so much for adding life into your subject matter!
Instead, you realize is that getting into 'fights' with the borrow checker is actually a *symptom* of a deeper problem of ambiguous data ownership in your program.
This is really interesting because it can give you an early forecast of deeper issues on the horizon!
Just open sourced π presser, a Rust crate I wrote to help us at
@EmbarkStudios
copy data into raw allocated buffers without invoking undefined behavior. Ever done something like the below? presser can help!
hello
#kda
twt i figure i should re share these ahri and kai'sa commissions that I got from @/pantieschan and @/frogbiansVEVO respectfully back when pop/stars came out :3
it's fucking done :')
so much work has gone into this over the past year, and especially the past month or so.
hitman 3 trilogy master sa/so world record is now 22:26 by ME
Graphics programmer: damn, opaque object blocking the transparency/overlay draws again
Gamer: n e g a t i v e s p a c e e n t i t y creates a v o i d in the water and shadows
Through a complex series of glitches in Donkey Kong 64, it is possible for Tiny Kong to become a negative space entity. Instead of merely being invisible, she creates a void in water and shadows around her, appearing as a "hole in reality".
Today I'm "releasing" a new version of my toy path tracer `rayn`... the biggest new feature is βοΈβ‘οΈvolumetricsβ‘οΈβοΈ (seen below)!
I also wrote some new documentation to help people that are unfamiliar with the code get started playing around with it!
Lots of people are misunderstanding the point of this tweet. It's not "what are some higher level langs that are pretty fast."
It's, "could we make a language that's faster than C/C++/Rust"
π§΅
Wondering if there's a niche for a language or programming system that is (a) aimed at achieving the highest possible performance for user code while (b) avoiding any pretentions of being for "systems code" (i.e. writing device drivers, thread packages, operating systems). ...
@EfflamMercier
Yes! This is as huge failing of art teaching imo. Art teaching of light is pretty much 90% hand waving without actually going into actual physics and the very important implications they have on how things should be drawn.
@savannah_solo
@OnlyFans
Can we please stop using gaslight and manipulate to mean anything you don't like? There's quite literally nothing gaslight-y about this tweet or decision.
Art Tips from a Graphics Programmer 1, FRESNEL!
This funny word is responsible for creating many of those sweet, sweet rim lighting effects we know & love. Understanding it will really help you up to the believability & pop factor of your rendering & lighting!
(THREAD)
If borrowck is making your life hard, even early on in a project, it's a pretty good sign that *you need to reevaluate data ownership in your code*.
I think this is something that experienced Rust devs sort of do without even realizing it; they've discovered over time that >
@YGALH
@ThisIsA__
@hangryliving
You're not wrong but art is also not a race!! it can be harmful to tell kids that they're incredibly talented too much (as opposed to just complimenting the art for its inherent value and telling them they are inherently valuable) because then when inevitably their improvement >>
@YGALH
@ThisIsA__
@hangryliving
falls off, they feel like they're not as valuable anymore. It's a simillar thing with 'gifted kids'... lots of people have issues with this and it can make them start to hate and get discouraged from doing things if they don't just instantly get good at it... ask me how i know x)
Okay so I'm about 5/6 of the way thru an 850 page monstrosity of a novel called The Priory of the Orange Tree, and if the fact that this is legitimate fanart for the book doesn't convince you it's worth reading then idk what will.
Also, it contains a wlw slow burn romance. Yea.
@imsteffrdz
@NASAchist
@emoblackthot
Yes nobody had empathy for you so the proper response is OBVIOUSLY to never have empathy for anyone else... ππππ
This can give off the impression that in order to dev in Rust you need to do overly complex lifetime annotation and/or runtime borrow checking in order to satisfy borrowck.
However, as you get more experienced with Rust, you start to notice that this is not really true at all.
The point of this tweet is NOT that DX12 is bad. DX12 DOES NOT cause stuttering. If anything, it reduces uncontrollable stuttering. The point is that DX12 allows more explicit control of GPU by the game, so there's nothing a USER can do to fix a BUG that is causing stutters.
fighting borrowck almost never leads to good things, and so they sort of instinctively change things around when they see the first signs of trouble.
And, I think it's really interesting to get this emergent behavior: borrowck was never really designed to be prescriptive, afaik!
Graphics & color science π₯ take that I think should be a π§ take:
We should stop referring to the result of physically based rendering (simulated scene radiance hitting a virtual camera) as a "color" at all.
@DarkTriadMF
@NathanStanz
G2 founder and ceo made tweet showing him at company party with Andrew tate, doubled down twice including "this is where I draw my line. You cant police my friendships". Few days later, he got removed from G2. So stanz is saying, guess we could police them :)
Just to clarify what I meant by this last point:
borrowck is designed to check the *correctness* of your code *implementation*, but it was never really meant to be able to tell you whether your overall program *design*/structure is good or not....
Hello & thank you to all of my new tech followers! Just wanted to make a few things clear up front :)
1. This is an explicitly gay and trans friendly space, if you have any problem w/ that then please leave
2. This account ends up being more about art than tech most of the time
Hi & thank you to all the new graphics/games related people that have followed me recently (and to those that have been following)!!
I'm currently in my final year of uni and am looking for paid internship/path to hire & intro-level positions from now-spring 2021. If you or your
Compiler driven development in Rust is so amazing I cannot ever imagine going back to a language that doesn't have the ability to let me make a root change to something and then guide me through all the different parts that are affected and need to be changed
Interestingly, the fact that borrowck isn't as smart as a human can be is often a good thing! It means that once you come up with a way to express what you want to do in a way that borrowck understands, it'll be simple enough that a human can more easily verify & work on it too!
Spent the last 3 weeks in the incredibly beautiful Stockholm and finally got to meet my awesome coworkers at
@EmbarkStudios
in real life! Can't wait to be back in a few months :)
@Iarrancia
@qtcinderella
wider context is he got called out a coulpe months ago for sexist behavior and instead of apologizing and stopping it he just doubled down that he did nothing wrong and then this all blew up again today because of argument on stream with tarik
If I could give every person one piece of professional advice, it would be: when asking someone to give you their time, lead with the actual question you want to ask in the most concise, polite manner you can, rather than a nothing-burger "Hi, are you free?" or anything similar.
@Rocket_GSK
@Marceline2174
It's the classic upper class goody two shoes never done wrong x lower class troublemaker that doesn't give a crap what anyone thinks dynamic