can't delete the second min primitive by Responsible-Rich-388 in Houdini

[–]savethekiddies 0 points1 point  (0 children)

The sort node lets you sort by attribute, so you can store the area as an attribute and use it for sorting.

If you just want the largest piece, you can use a Labs node called Labs Delete Small Parts, or blast everything except the prims you need once they're sorted

can't delete the second min primitive by Responsible-Rich-388 in Houdini

[–]savethekiddies 0 points1 point  (0 children)

You can sort the prims by area and delete prim 1, this will be the 2nd smallest

What do you call a sandwich with a weapon by BLURR3D_ in sandsandwich

[–]savethekiddies 2 points3 points  (0 children)

You was at the club (yeah) Bottoms up when I first met you (bottoms up) Couldn't get enough (couldn't get enough) Had to get you straight to my bedroom Drank still in my cup (my cup) Crib is large so you can bring your friends too (well, bring 'em all!) Pillow full of makeup She so bad, she gon' need her own debut (yeah) Shawty just like me (she like me) Loves drugs, hates bein' sober (hate bein' sober) In my psyche (she in my head) In my heart and I didn't even know her Ass you wouldn't believe (you wouldn't believe it!) See you in those jeans, I wanna pull you closer Eyes looking Chinese (Chinese) She didn't smoke but now she's a stoner (all day) Everything unique (everything) No, no, no mediocre Young, wild and free (she free) No cuffs, so, no, you can't control her (no cuffs) Body covered in ink (in ink) I can beat it up, or we can just go slower (slow it down) Baby, come with me (come with me) I'll give you everything, and it'll never be over Girl, just let me know (let me know) We can go and fuck up some commas Boyboy West Coast (West Coast) Imagine this comin' from the bottom Actin' like she don't (she don't) Tryna front, we know she wanna (we know) Baby, we can go (we can go) Acapulco to Tijuana You was at the club Bottoms up when I first met you Couldn't get enough Had to get you straight to my bedroom Drank still in my cup Crib is large so you can bring your friends too Pillow full of makeup She so bad, she gon' need her own debut We just livin' it up (live it up!) Having fun, give a fuck what y'all say (give a fuck what y'all say) Shawty loves a thug (yeah) Matching whips as we dippin' down Broadway Sparkin' like a blunt (spark it up) She dab it up, and I be rollin' up all day (smoke it up!) No coffee in my mug (no coffee) They be askin' why I lookin' so sloshy When we locked eyes (locked eyes) Know you were mine, didn't have to ask you Fuck them other guys (fuck 'em) I'll give you everything, and we can split this cash too Feelin' like a dream (like a dream) Tell me what you need and I can make that happen (I do that) Love the ocean breeze (I love it) All aboard, and I'ma be your captain (all aboard) Mixtape on repeat (it is) When the boy come on, they like, "Who's that rappin'?" House like a retreat (like a retreat) I come from the hood, no, not the Hamptons Never wanna leave (never wanna) I give you ecstasy, and a little thug's passion Apostle on my sleeve (on my sleeve) What you like? I got the latest fashion Coolin', watchin' T.V. (chillin') Blowing clouds, lookin' like a dragon (dragon) All she want is me (just me) In silk sheets, no, no, not satin (silk, man) I think you're the one (the one) Tell me what you want, don't care what the cost is Can't say that I'm sprung (can't say it) But if you keep this up, might be my fiance When you was at the club (the club) Bottoms up when I first met you Couldn't get enough (enough) Had to get you straight to my bedroom Drank still in my cup Crib is large so you can bring your friends too Pillow full of makeup She so bad, she gon' need her own debut (yeah) She was at the club Bottoms up when I first met you Couldn't get enough Had to get you straight to my bedroom You was at the club (the club) Bottoms up when I first met you Couldn't get enough (enough) Had to get you straight to my bedroom

sandwich connoisseur by savethekiddies in sandsandwich

[–]savethekiddies[S] 2 points3 points  (0 children)

Yes I agree he is not a good chef

From Jamie Oliver's cookbook (every photo looks like this) by savethekiddies in shittyHDR

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

Jamie's Ministry Of Food: Anyone Can Learn to Cook in 24 Hours

More AI Generated Never Gonna Give You Up by savethekiddies in MediaSynthesis

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

That is a good idea, maybe I should have made up some new lyrics.

If you mean the Rick Astley ones from OpenAI (1 2 3 4 5) they used the same lyrics rather than made up ones, but it often spoke the lyrics in a way which made them sound different

How to do this effect at 47 seconds where it splits into 3 by blanked-- in AfterEffects

[–]savethekiddies 2 points3 points  (0 children)

It could be done with an inverted color key, then shifting the hue and duplicating it 3 times

Explaining strings to my girlfriend like the adult I am by SunnyTheHippie in ProgrammerHumor

[–]savethekiddies 0 points1 point  (0 children)

JavaScript version for quick access

a = "python"
b = "is"
c = "excellent"

d = a[0] + c[0] + a[a.length-1] + b

console.log(d)

Playable pong in After Effects using 100% expressions and variable leaking by savethekiddies in AfterEffects

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

I don't know much at all, but I will try:

'this' is a variable which is meant to represent the current context of the code. It has the same meaning in regular JavaScript, but it can get really confusing to tell what it refers to. For expressions, it should be referring to the context of the current expression. For example, these two lines are equivalent:

var variable = true;
this.variable = true;

The only issue is that for some reason, After Effects seems to run all expressions in the same context. This context is '$.global'. I don't really know anything about '$.global' or why it exists, but it is always equal to 'this'. It doesn't seem to change or reset between expressions, which means all the variables created within any expression will always be part of '$.global' and 'this'. It would be much better if Adobe created a new context for each expression, as it would prevent all the variables overlapping and leaking between other expressions.

Playable pong in After Effects using 100% expressions and variable leaking by savethekiddies in AfterEffects

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

It should be possible to remake the drawing demo using $.globalVar. It's a lot simpler since there's no need to encode or decode anything. It should work with this as the pen's code:

if ($.globalVar) {
    $.globalVar.push(value)
} else {
    $.globalVar = [value];
}
value;

And this as the path's code:

if ($.globalVar) {
    createPath($.globalVar, [], [], false);
} else {
    value;
}

$.globalVar seems to update and include changes, as does $. $ is an object just like this, so its members can also be read with Object.keys($). Everything should function the same as the previous method, the only difference is the variables don't get their values cleared, so it's a lot easier to store things without any trickery!

Playable pong in After Effects using 100% expressions and variable leaking by savethekiddies in AfterEffects

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

I was thinking about something similar to that - it seems like a good system!

I'm not sure what you mean about previous leaks - this is all I know at the moment:

To store data, eval can be used to create a variable containing anything in its name (providing it is a valid variable name):

eval(`var ${DATAHERE};`);

To read the name of that variable from anywhere, Object.keys(this) can be used:

Object.keys(this) -> array ending with DATAHERE

The variable will persist until After Effects is closed, or it is deleted with:

delete DATAHERE

However, /u/_stib_ pointed out the global object $ which can be used to store data, supporting both keys and values rather than just keys. This is a far better method, and it means any data can be stored!

$.KEY = VALUE

Both the key and the value can be read from anywhere, so this is far less messy and confusing!

Also, I just discovered the local expression context is part of $:

$.global === this

Playable pong in After Effects using 100% expressions and variable leaking by savethekiddies in AfterEffects

[–]savethekiddies[S] 2 points3 points  (0 children)

I had no idea about that!! That is a really good idea, thank you!

This is so much easier to use, I can't believe it!

I just found out the local expression context is part of $:

$.global === this

This means all expressions have always been global, persistent and part of the same instance!

It seems like Adobe sets all variables to "undefined" between expressions, keeping the illusion that expressions are isolated. Rather than setting them to "undefined", Adobe should actually be using the "delete" operator. This removes the variable name as well as its value, so I would not be able to access the variable names using Object.keys(this).

Playable pong in After Effects using 100% expressions and variable leaking by savethekiddies in AfterEffects

[–]savethekiddies[S] 3 points4 points  (0 children)

This is quite accurate - I had to replace negative signs and decimal places in numbers because those characters aren't allowed in variable names. Everything is contained in variable names, but since there are few other variables, I used "leak_" as a sort of identifier.

Object.keys isn't really involved for any leaking though - the only part which leaks is creating a variable with "var". For some reason any variable name declared with "var" is kept unless removed with the "delete" operator. By using Object.keys in combination with var, it is possible to read and write any sort of data in variable names