#ue4-general

1 messages Β· Page 172 of 1

gleaming shore
#

created a material with emissive color and applied to object

loud phoenix
#

Your reference image has lighting in the scene, try adding some to yours and then add a post-process volume and play around with the bloom settings. It should look similar

gleaming shore
loud phoenix
#

Sure, np. The emissive parameter may be a bit intense for that level of bloom, try lowering it to find a balance in the glow. Good luck!

gleaming shore
#

Will do! I set it really high to test if it would help, thanks again!

kindred viper
#

might wanna check out the spiral blur material node to add a bit of warmth to the bloom. It looks more like banding without it at high levels

#

@gleaming shore

gleaming shore
gleaming shore
#

Using the Timeline node is there a way to start it for exmaple on 1 second (like in level sequence)

plush yew
#

The New Time input @gleaming shore

azure shore
#

ANYway

mild copper
#

Do you know if the Devs from Wildcard hang out here? I am having some Ark Dev Kit issues that I think are related to the dev kit itself.

gentle ivy
#

Eh they might but the better place to ask about that stuff is through their devkit help support

umbral tartan
#

Im building a modified version of 4.17 right now for the first time.

Up until now I've only used pre-built engine versions and created new projects via the launcher, so I prefer working in editor/BP rather than VS.

Anyone know if it's possible to create a BP project that uses a modified engine? I couldn't find much of any info about this.

trim terrace
#

sure

#

just start the Editor of ur Modified Engine and u can create projects like with a normal engine

umbral tartan
#

@trim terrace Sweet. Thanks a lot for trying to help . Sorry, but do you know of a tutorial that walks one through the process? Like, Im not exactly sure where I would "start the Editor". Only way I know how to start the editor is by launcing a project from the launcher.

trim terrace
#

if u have compiled your source of the Engine, there is a Bin folder with 32/64 bit binarys. there u can start the Editor itself πŸ˜‰

umbral tartan
#

Awesome thanks!

trim terrace
#

like "UE_4.18\Engine\Binaries\Win64"

#

then run the "UE4Editor.exe"

umbral tartan
#

I've been working with UE4 for 2.5 years. Never knew that was in there... Guess that makes me an old newb. Thanks a lot.

trim terrace
#

πŸ˜„ No problem ^^

#

if u are using the Source Version from Epic, there should also be a file to register the sorce engine to ur system, so u can select the engine on ur Project (Switch unreal engine version) or something like that. then u can run the Project directly and it will launch the Editor of ur selectet engine

#

to do so, make a right click on ur Projects .uproject file

#

there u should know how to go πŸ˜‰

umbral tartan
#

@trim terrace Thank you! I'm going to copy what you said here and add it to me UE4 notes memo. Thanks for the screenshot. (I've seen it a thousand times now, so that one's burned in my memory)... Really appreciate the help!

spark garden
#

the file you want is UnrealVersionSelector.exe located in Engine\Binaries\Win64

#

πŸ˜ƒ

trim terrace
#

yeah. thats what run if u select "Switch UnrealEngine Version" of ur uproject file πŸ˜„

umbral tartan
#

@spark garden Got it! Thanks a lot guys, this'll definitely come in handy.

tame bluff
#

So if Euclidean isn't bullshitting, what is the tech they're using to render so much?

#

Voxels with some kind of realtime dynamic LOD system?

wary wave
#

ergh, not them again

#

it's bullshit, like always

tame bluff
#

Hasn't anyone, like a journalist, been to their hologram thing and like, put their head to the ground or in a leaf to see if they were bullshitting?

#

Wouldn't that reveal if they were scammin or not

wary wave
#

of course not, they don't actually let people use their stuff

#

they just keep releasing dumb videos and marketing materials to sucker in investors

#

it's getting more and more sad, because they're still comparing their graphics with games from 2007

tame bluff
#

haha

#

Yeah for real

wary wave
#

and their 'floating point atoms' (aka voxels) are in mainstream use in a lot of game engines for more practical purposes

tame bluff
#

It just seems unbelievable with all the minds in computer science

#

that they are the only ones to have found this "Technique"

#

It sounds like voxels to me, but even then they don't really have a way to prove it in realtime over a youtube video since it's so easy to fabricate

wary wave
#

it's a sparse voxel octree algorithm and something like marching cubes, I think

#

so it does render in real time

#

but it's very limited

tame bluff
#

My understanding was animation especially was super limited

wary wave
#

they've never shown anything like animated characters, as an example

tame bluff
#

and would essentially be required for alembic purposes right?

silver crown
#

I thought it was raytracing?

tame bluff
#

They showed some animation in that demo

#

Elephants running at the folks in the VR room thingy

#

But again, it looks like potato graphics

wary wave
#

aha, skip to 10 minutes, looks like they're using VR for their 'holodeck'

#

and yeah, it's shite

#

it's a single object, without materials etc xD

silver crown
#

Speaking of voxels

tame bluff
#

Wow are you euclidean

wary wave
#

ah yeah, they do have animation now (11 minutes into the video)

#

only took them a decade to get there

tame bluff
#

They probably use model swapping

#

there's no way to efficienctly move that many points of data in realtime

#

there just isn't

#

so you need to either unload and reload on the dime

#

or it's fake (probably this one)

wary wave
#

not sure what game they're using to compare their animation, but it's some MMO or RPG that's at least 15 years old, if not 20

tame bluff
#

They used the word "Blizzard"

#

It's probably just WoW on lowest settings lmao

wary wave
#

it's just sad, honestly

tame bluff
#

thats diablo

#

Diablo 3

wary wave
#

gotcha

tame bluff
#

If it was made of "Atoms" why didn't they pause the anim, zoom in, and prove it?

floral heart
#

Atoms? Psh! With raytracing and analytical shapes we can have INFINITE PRECISION. (technique circa 1979)

#

Right up until you try to do a mandelbrot zoom and run out of bits.

silver crown
wary wave
#

Claybook has such nice art / tech art

#

sadly I can't see the game in it though

silver crown
#

That's the issue yep

#

It's more a technical demo 😐

cloud cobalt
#

Atomontage has been sad for a long time

#

I think I've first saw and laughed at one of their trailers, maybe 6-7 years ago

wary wave
#

they have some reasonable tech, especially when compared with 'Infinite Detail'

#

but it's still a long way from useable in any practical game development sense

floral heart
#

Unless your ambition is to remake From Dust.

bitter iris
spark garden
#

@bitter iris jesus how big is that terrain ?

bitter iris
#

8km x 8km

#

not sure why its taking so long

#

i done a 16x16 map over night

vale osprey
#

@cloud cobalt Atomontage is not suppose to be practical, the dev is exploring limits of such approach and what overall can be done in rendering and authoring of assets. There are plenty of good things came out of it, like the way how he creates landscape. Which have actual different materials and objects inside of it.

#

@tame bluff if you follow trace of founders of euclidean, you will find couple of papers on fast algorithm for rendering point cloud data

tame bluff
#

@bitter iris what's that?

vale osprey
#

it's not extremely innovative or a game changer. Have no idea if its even practical for point cloud visualization when compared to other solutions. So they are trying to find investors somewhere else

tame bluff
#

Ah cool stuff

cinder iron
#

we all know that PHYSX doesn't support quaternion sweeps, what would you guys propose for yawing while standing in place and not going through objects when moving a custom pawn that wouldn't fit on a capsule? I have my own work arounds, but going the "real way" through binary search wouldn't suit my necessities and would be expensive as hell.

wary wave
#

@vale osprey - it's just snake oil. They change the pitch every few years and try to extract some more money from someone else

#

I have no idea how they've managed to keep going so long, tbh

vale osprey
#

@cinder iron are you on something like a rocking boat in the sea?

wary wave
#

they've barely progressed in over a decade

cinder iron
#

just a long hover bike, doing experiments currently

bitter iris
#

@tame bluff its a 64km^2 map

tame bluff
#

Are you exporting it or something?

#

From World Machine?

wary wave
#

@cinder iron - what are the actual requirements, because chances are you can fudge what you need?

vale osprey
#

@cinder iron you could approximate with linear sweeps, or do an overlap test on a separate custom mesh

cinder iron
#

everything is solved aside the yawing in place, overlapping doesnt sweep when it comes from a full rotation movement, no problem when there is forward or sideways movement.

#

What I'm doing right now is not allowing the player to yaw while idling, but, let's say I don't want that

vale osprey
#

or if you are fine with a bit of low level code, check GetDepenetration() function in PhysX - its basically an overlap with collision data

cinder iron
#

thing is that hit doesnΒ‘t get registered without any z, x and y movement, not including rotations

vale osprey
#

yes

cinder iron
#

will GetDepenetration() even register a thing?

vale osprey
#

it doesn't "register", you give it two objects, it tells you direction and amount of force to apply to depenetrate them if they overlap

cinder iron
#

if they overlap

#

but they aren't in main terms, at least if I don't include the binary search for sweeps which is (at this point) kinda meh for me to do

vale osprey
#

if they don't they don't, you can use it incrementally to find range of yaw, or just use overlap test

#

I see, well I don't know how would you do it without binary search

cinder iron
#

maybe something quiet simpler?

#

line linetracing solution?

vale osprey
#

make you bike a physics body?

#

line tracing is still will be binary search to approximate angular movement

#

you could just "ragdoll" it when bike is not moving

cinder iron
#

yeah but even though it is supposed to detect when player can yaw or not if bike is close to an object

#

mh, ragdoll seems interesting, but currently because of design choices the bike does not update any phys when its not moving

#

performance decissions

#

and network.

vale osprey
#

maybe sim it with physx intermediate - aka put bike into intermediate scene, with some objects that are around and apply torque in one direction and then another to test for collision

#

it all sounds convoluted πŸ˜„

cinder iron
#

hahaha, no joke I though about the torque solution to force a positive situation xD

#

It all came to my mind because I saw hovered vehicles in the new battlefront not having these problems, and that lead me to wonder if they are going full low-level or, maybe they don't use PHYSX at all which could be an option

vale osprey
#

I don't think DICE ever used physics middleware for their vehicles, only as query/collision system

#

but that doesn't mean much, like with tanks, I don't use PhysX for anything but raytraces /collision with rigid body simulation

cinder iron
#

yeah no I do the same, I don't actually handle hovering with forces and physics, I just fake it

#

thing is that I do use physx for collisions

vale osprey
#

for queries I suppose, as if you don't simulate

#

I don't know why there is no angular sweep, but it's like that in PhysX itself, figure πŸ˜„

cinder iron
#

yes, actual collision queries, I don't simulate

vale osprey
#

could just google what people who use PhysX do in this case

cinder iron
#

I did before coming here but didn't find quiet reliable answers πŸ€”

#

basically only "make things fit on a capsule"

vale osprey
#

yeah I don't see much either

cinder iron
#

PHYSX supports speculative angular CCD but apparently is not exposed to the engine on a friendly way, I might investigate a bit more, if not I'll go ahead with my silly trace solution hehehe

vale osprey
#

CCD works only for simulating objects as far as I know

cinder iron
#

maybe CCDSweep will act correctly enabling it, if i don't test I can't know

#

well thanks for your input though! nice talk

slate lance
#

Hello

vale osprey
#

@cinder iron CCD Sweep? I think that is something low level that PhysX does, not sure if that is even an actual function

cinder iron
#

I phrased myself a bit akward there, It's not a function no @vale osprey

#

There, I edited it

vale osprey
#

ahhh, I don't have high hopes for it working as it's based on velocity. Good for projectiles in theory, catching something that collides as result of angular movement - don't know. But that should be solved automagically if you simulate. Regardless of ccd

rotund needle
#

πŸ‘‹πŸΌ

fierce tulip
keen birch
#

Isn't that an incredibly old piece of software that still uses .dds textures?

frank escarp
#

@keen birch unreal engine uses dds textures

#

dds textures is a texture format meant for direct gpu usage

keen birch
#

Well yeah except iirc this only uses dds

frank escarp
#

to "load" a dds, you literally memcopy it to GPU

#

pngs need to be uncompressed, then compressed, and then uploaded to gpu (or upload uncompressed)

muted minnow
#

@fierce tulip Thanks for the link, looks like a useful tool.

noble solstice
#

Is it better to start with blueprints? Or just jump right into coding?

frank escarp
#

blueprints

noble solstice
#

Why's that?

keen birch
#

Because it's basically programming without syntax

#

There's two parts to learning programming

#

(Imo)

#

Syntax and logic

#

Blueprint lets you do logic without needing to worry about syntax

#

Which can be really great

#

I started with C#, 90% of my initial errors were "Whoops, forgot a semicolon somewhere"

#

Except I didn't know how to read errors properly so I never knew what was going wrong

#

Still, I'd say the answer is "it depends" ;3

noble solstice
#

hmmm guess it makes sense. In my case I'm only just starting to relearn C++ (started it like 4 years ago then stopped cuz..life) so i figure i might as well do blueprints while i also learn C++ that way i at least understadn how to use UE by the time i got it down

#

wanted to make sure blueprints werent a waste of time πŸ˜›

#

LOL the answer is always "it depends"

keen birch
#

They're not

surreal viper
#

they are not a waste of time

keen birch
#

I can do C++

#

I absolutely fucking hate it though

#

So I do everything in BP instead

surreal viper
#

but their sane usage is limited imo
however you need to know them to know where to use what

keen birch
#

E.g. what I'm doing now (procedural foliage spawning) isn't a very good idea to do in BP

#

But still

#

If you fight the engine a bit it's do-able

noble solstice
#

i assume actual coding would be "better" tho

keen birch
#

Well

#

C++ is faster

#

Sort of

#

Situationally

#

Generally marginally

frank escarp
#

turns out blueprint functions in unreal map directly to C++ functions

keen birch
#

Yeah, they do

frank escarp
#

wich means that blueprint and C++ is the same thing, but on a different syntax

#

thats why you allways start with blueprints

keen birch
#

Well, with exceptions

frank escarp
#

its easier to learn and prototype with them

keen birch
#

Afaik it's not 100% the same

#

Though, if you nativize it is

frank escarp
#

later down the lane you try to add your own functions coded in C++

keen birch
#

Basically, Blueprint is C#

surreal viper
#

BP is way harder to maintain and fix tho

keen birch
#

No-fuss, does the same thing in the end

#

Ohj

frank escarp
#

yes, but when learning it doesnt matter

#

nor when prototyping

keen birch
#

Wise lesson I've been blatantly ignoring

#

Don't use blueprint structs

frank escarp
#

i can tell you first hand, blueprints are a pain to mantain

keen birch
#

In what sense?

frank escarp
#

C++ can be copypasted around, and you get the IDE, all that stuff

keen birch
#

You can copypaste BP

frank escarp
#

you cant copypaste a function

noble solstice
#

so i SHOULD go through any and all blueprint related tutorials from epic?

keen birch
#

Do it all the time

#

Ah

frank escarp
#

you cant copypaste a function from one class to other

keen birch
#

Well, you can create a new function and copy-paste the contents ;3

frank escarp
#

you need to remake the function, paste the contents, and rewire all variables (becouse they are missing)

keen birch
#

I've personally never really had issues

frank escarp
#

and a few other rewires

#

in C++ its just a copypaste

keen birch
#

Ah right

frank escarp
#

also, blueprint can fail silently

keen birch
#

Yeah, true enough

frank escarp
#

in C++ if it compiles its fine

#

if something changes in the engine it will fail to compile

#

(when you upgrade versions)

#

blueprint can unplug things and the like

#

wich is a huuuuuuuuuge pain

#

a pure C++ project is super easy to upgrade to newer version

keen birch
#

@noble solstice I'd say no, I'm guessing you know how variables and stuff work, so look at one or two things to see how it works and then just google if you don't get stuff

frank escarp
#

just fix some compiling errors and done

#

but blueprint can break

#

and break silently

keen birch
#

Thank god for orphans on that front

#

Took them long enough

noble solstice
#

@keen birch yeah variables, loops, genereal logic stuff i pretty much have down. Mostly need a refresher on how C++ specifically handles that. I also need to learn the UI tho and how blue pritns operate so i think ill at least go through a couple of the tutorials. even if its just the third person one and the loopty loop car one

frank escarp
#

go with blueprints

#

to learn ue4 itself

#

even serious C++ programmers shouldnt jump into UE4 C++ directly

keen birch
#

^ It's pretty different from the actual thing

frank escarp
#

becouse now you need to learn the way UE4 architects stuff + the API + the C++ weird shit it adds

#

blueprints is just"the way ue4 architects stuff + API", and lots more docs about it

#

you deal with weird shit in C++ later down the line

surreal viper
#

I second that
also a typical experienced c++ programmer mistake is not to check BP at all, which is a bit stupid imo

muted minnow
#

I come from a C/C++ background, and at the very least, I find prototyping features in blueprint much quicker than in C++. After things start to come together, I'll refactor to C++ class and expose variables / events / methods.

#

This general workflow feels like the 'right' way to do it in UE4.

#

(At least for me :p)

surreal viper
#

for me it depends on the stuff I want to prototype

#

if it requires e.g. a state machine

#

then I won't try to do that in BP like ever again, tried it a few times, that never worked out

#

what I like is having dynamic universal stuff in C++ and build on that in BP - all i do in bp is basically to setup different default values and call some functions

cloud cobalt
#

Overall, my biggest problem with BP is that they're not version friendly. I want an engine-independent text format that I can diff and merge with my regular tools and check years later with a log history.

#

IMHO it's the strongest argument against Blueprints

#

Obviously, there is a lot of stuff that works well with Blueprints too

wary wave
#

Blueprint should be able to be output into a text editable format for diffing

cloud cobalt
#

That's not nearly enough imho

#

What I'm considering for my next game is a data asset with an automatic synchronization to text, for example for quests

surreal viper
#

I use something like that for AI and dialogues πŸ˜„

#

I am not sure how it works yet tbh, system is ready but wasn't used much (yet)

frank escarp
#

im going to spam JSON

#

for everything

#

blueprints will hold the "master" copy of a class

#

and json edits the stats and stuff

surreal viper
#

makes sense

frank escarp
#

i really dont want what i have in DWVR

cloud cobalt
#

I'm definitely going to do something like JSON sources for quests + reimport tool

frank escarp
#

DWVR has a "Characters" Folder

#

with 10 blueprints or so

#

Base Drone, Fast Drone, Rocket Drone, Heavy Drone, Weak Drone, Sword Skeleton, Heavy Sword skeleton, Pistol Skeleton, Rifle Cyborg weak Rifle cyborg strong...

#

etc

#

actually more than 10

#

on my next project i would have a Drone blueprint, wich holds everything

#

and just json to change the stats for the fast, rocket, heavy, weak, etc ones

cloud cobalt
#

We went with data assets for that (Blueprint just do the 3D stuff)

#

We should definitely have used a json source + importer for these

frank escarp
#

data assets are still binary and a fucking pain

cloud cobalt
#

Or a datatable

#

Yup

frank escarp
#

json lets me deliver over the network

#

and edit without ue4

surreal viper
#

isn't it a pain to setup stuffs like meshes?

#

you have to reference them via the path, right?

frank escarp
#

those are setup in the blueprint

surreal viper
#

aren't the different drones have different meshes?

frank escarp
#

nope

#

just recolors

weak thunder
#

is there anyway of accessing unpacked files? I wanted to see how another game made bones for their character bodies.

frank escarp
#

even if they did, then i would have a few meshes to set visible/invisible, or just to swap

#

setup in the blueprint

surreal viper
#

maybe an enum and a mesh table?

#

or even better, FName

frank escarp
#

enum

gentle ivy
#

morning all

surreal viper
#

I don't trust in blueprint enums and I don't want to recompile, I think I would go with FName πŸ˜„

#

on the other hand I would have to type that, hmm

gentle ivy
#

enums are a pain but trustworthy

surreal viper
#

life sucks

gentle ivy
#

strings are far more untrustworthy (typos)

frank escarp
#

exactly

gentle ivy
#

enums are a dropdown box

surreal viper
#

you have to type those at the end anyway

#

because of config

frank escarp
#

but it would get caught in my tester

surreal viper
#

but you can catch wrong ones for enum

gentle ivy
#

sure but you type it once.

surreal viper
#

so yep I see your point, it's a good one

frank escarp
#

i never like to use FName for such things

#

the marging of error of typos is way too big

gentle ivy
#

you should never replicate strings/names as well

frank escarp
#

and my game would have coop

#

im going to try to script NPC AI for the player

#

it could be interesting to have AI teammates that can be played by a real human in some cases

gentle ivy
#

I say never like you can always get around it. Strings are fine for like playername but don't use fname for like bonename replication

#

ah yeah thats pretty cool

#

reminds me of csgo where you can control the bots

frank escarp
#

i can then do stuff like allow the player to select wich NPCs go with him and recruit them

#

like in shadowrun

#

of course gotta test how hard would that be

#

at least it "unifies" coop vs solo missions

#

now all of them are coop

surreal viper
#

depends on the game I guess but I think it is a rather hard task in general

#

to make a not so annoying coop ai mate

frank escarp
#

not the first time i do player squad bots

#

of course ill experiment

#

but they would mostly just kind of follow the player and attack everything on sight

#

i dont think you will be able to give them orders

#

its a vr game its not like i have a fuckton of buttons or weird commands

surreal viper
#

what i really hate tho is that I can't use a single anim bp for more skeletons

#

best I could do is to create a template one

#

and I have to duplicate it for each skeleton

#

annoying as hell

gentle ivy
#

just use one?

surreal viper
#

because of course I can do a skeleton independent anim BP, i just store the anims in variables and get those from owner

#

I can't use the same skeleton

#

I have stupid monsters with very different skeleton setups

#

and the anim BP has to have its own skeleton

#

actually I just assumed that I can't play anim(skeleton B) in an anim bp (skeleton A), but i'll check it quickly πŸ€”

#

no, I can't

#

this is a nightmare

#

maybe the best way would be to automate the anim BP retargeting and duplication or idk

frank escarp
#

you can do anim tree in C++ for the "general" logic

#

and subclass it for different skeletons

surreal viper
#

but I don't want to subclass it

frank escarp
#

just you will have to remake the anim tree part...

surreal viper
#

that's the whole point, I managed to do a general logic, which works with the majority of my little monsters

#

but for some strange reason anim BP is skeleton bound

#

so if I change my general logic I have to "duplicate and retarget" my template anim bp to each monster
I don't have that many atm but it is already annoying

#

I guess if I could move up the general logic to C++ I would not have to do that, hmm

#

if I modify it, that is

obtuse sable
#

yo im rendering a cinematic in Unreal and only like the first few frames actually show the scene

#

rest of it is just black

#

Ive done it before and now for some reason this is happening

weak thunder
#

How do you guys share 20+ gigs worth of data with fellow team members if you are not physically sharing the space?

frank escarp
#

perforce

weak thunder
#

I cant seem to figure out what their plans are. Just descriptions, TRY FOR FREE and other marketing stuff.

keen birch
#

Ikr?

#

Apparently Microsoft offers this thing with unlimited data through GIt

#

Haven't looked at it too much yet, but it's interesting at least

weak thunder
#

doesnt Git have a 1gig limit?

#

no clue for individuals

keen birch
#

Well yeah

#

Github does

#

Git is just the implementation

#

The limits depends on whoever's hosting it

#

And in this case, microsoft is apparently hosting it with some interesting stuff

weak thunder
#

Do you have a link?

keen birch
#

I'll see in a sec

weak thunder
#

thanks

keen birch
#

@weak thunder

#

Currently working on trying to set it up

weak thunder
#

Thanks. I will forward it to my people and see what they think.

keen birch
#

Free for 5 or less peeps

weak thunder
#

I wonder if people could account share πŸ˜›

#

I working with a bunch of hobbyists like myself so people come and go.

half mango
#

guys

#

anyoine know a way to turn multiple actors at once to "use complex collision as simple"

#

cus there so many of them

keen parcel
#

what's it called when you map an existing folder location to another physical drive on windows? can't remember how i did or what it's called!

keen birch
#

That'd be a junction @keen parcel

#

(There's more names for it though)

#

(I know it as a junction)

keen parcel
#

yes!!! symbolic link

#

cheers bud, so many similar things come up when i searched

#

just discovered the DDC has 36gb of my system drive

keen birch
#

You know what's awesome?

keen parcel
#

YOU?!?!

keen birch
#

Mapping to a NAS or something like that

#

Huh

#

Not what I was going for

#

But I'll take it

#

:3

keen parcel
#

building a new pc atm with m.2 ssd

#

havent checked but i'm guessing that a NAT would be a very slow way of managing compared to a local m.2

keen birch
#

Well yeah

#

Though

#

To be fair

half mango
#

i got 1tb m.2 i think it was a waste

keen birch
#

You could dump a bunch of m.2's in a NAS

half mango
#

insanely fast but doesnt help UE much

keen birch
#

Well no, but you could've seen that coming

half mango
#

another SSD would be good enough

keen parcel
#

Typical data transfer speeds range from 3MB/s to 20MB/s for consumer level NAS devices

keen birch
#

Heh

#

Didn't know that

#

Nevermind me~

keen parcel
#

@half mango rly?

keen birch
#

Why'd UE4 benefit that much from an m.2?

half mango
#

i think so.. but idk

keen parcel
#

but what about loading large projects? marketplace assets etc?

half mango
#

its almost too fast

#

everything is instant

#

there's another PC here with an old SSD

#

seems barely quicker

#

i bought too much RAM too l0l

#

64gb 3500mhz

#

definitely didnt need the speed

#

of the ram

keen birch
#

Wouldn't mind the extra RAM

#

RAM speed is just overhyped overall

half mango
#

again doesn't help UE

keen parcel
#

that's really interesting

#

and potentially saved me Β£1k

half mango
#

even in production bakes that take 40+ hours

#

the ram only uses 30% max

#

but threadripper.. always 100%

keen birch
#

You didn't order yet? @keen parcel

half mango
#

i wish i got 2x threadripper somehow

keen parcel
#

not yet.. but spec'd it up with a 1080

half mango
#

1080 ti also useless so far

#

never went under 119fps

#

1060 would be good

keen parcel
#

gcard price has gone up cos of crypto mining

keen birch
#

Oof, if only I had 1k lying around for hardware...

keen parcel
#

Β£1,800 predicted spend + Β£1k on new super-ultrawide 49" samsung

half mango
#

just get processors

#

if u only want it for UE

#

it's almost 100% processing power

keen parcel
#

trust me though.. that's not extravegant when you spend 18+ hours a day glued to a screen

half mango
#

why the monitor?

keen birch
#

Got a 32" 21:9 myself

#

Because it's awesome

#

It's multi-screen but nice, really

keen parcel
#

currently run 3 x dell

#

and it's too wide

honest rune
#

those m.2 would be much better spent using for intel optane...

keen parcel
#

so i'd prefer bigger screen without the bezzles but curved

latent terrace
#

hey guys, when i write NativeParentClass:"InventorySystem.Item" in the content browser, it includes InventorySystem.ItemActor too

#

any way to make it only find the InventorySystem.Item ?

honest rune
#

much rather have a solid cpu cache then a ssd that's speed is negligible

keen parcel
keen birch
#

AAAAAH

#

HDR

#

😦

half mango
#

2x 29"

#

only Β£200 each l0l

honest rune
#

you see that announcment about samsung's 150" tv?

keen parcel
#

@honest rune good points btw

honest rune
#

see that being like 10 grand

silver crown
#

The CHG90 is available to preorder for $1,499 on Amazon, with a slated release on June 30.

keen parcel
#

too long to wait

#

and i think 49" looks about right.. any bigger and you are constantly turning your head

#

i dunno.. you can't really tell until you are working at it

silver crown
#

That's the 49"

keen parcel
#

i got it in my cart for $1299.99

#

thought you were linking to a newer model

#

49

SUGGESTED RETAIL:$1,499.99

YOUR PRICE:$1,299.99

YOU SAVE: $200

silver crown
#

Nvm

#

June 30 2017 lol

keen parcel
#

hehe

#

it's almost 100% processing power

#

@half mango ^^ really?

#

i can see that having more cores would be very useful

half mango
#

the building yeah

#

well i bought high end everything

#

and it uses 100% cores

#

and still takes 40 hours build

#

with a 1950 threadripper

silver crown
#

lighting?

half mango
#

ye

#

with high resolutions

silver crown
#

😐

half mango
#

i want 80+ cores

keen parcel
#

u doing game or archviz?

half mango
#

and to sell the rAM, but 2nd hand ram isnt worth much

#

archviz

pallid compass
#

So after looking at some socket locations of ue4 weapons, i was wondering how the hell they line that up with animation its so sort of, random?

honest rune
#

ah man, I made 2 seriously awesome and helpful APIs over the weekend.
A nice File System wrapper and a really sweet SQLite API πŸ˜„

keen parcel
#

did you make me a sandwich?

honest rune
#

Should be able to wrap both we a easy to use blueprint api but I don't really do any more than necessary in BP so not sure if I'm gonna

#

If the sandwich is made of 1's and 0's then yes, I did

#

101 - sandwich (sideways)

silver crown
#

@keen birch Wait - VSTS has unlimited git lfs storage

#

That's awesome!

keen birch
#

Seems like it dunnit

silver crown
#

Thanks for the link!

keen birch
#

Still trying to figure out the strings

#

πŸ˜›

silver crown
#

?

keen birch
#

Seems a bit too awesome to be the case

silver crown
#

Probably bandwidth limitations

keen birch
#

But really, it is the impression I'm getting

silver crown
#

Gonna make a test

#

50 GB of data

honest rune
#

well, they do own their own gigantic cloud so, I would assume their servers should be fine

#

TS is cloud is MS-hosted yeah?

#

if*

silver crown
#

Yep

keen birch
#

Well yeah

#

I just don't really expect them to give away their gigantic cloud for free

#

Pushing your source? @silver crown

honest rune
#

thatd be such a dick move though lol let someone have 50gb storage but give them like 5gb bandwidth lol

keen birch
#

xD

silver crown
#

That's what github does

honest rune
#

even with paid?

silver crown
honest rune
#

damn

silver crown
#

The worse part is that once you pushed files on a repo with lfs

#

You can't remove them

honest rune
#

I guess its the initial push that kills eh

silver crown
#

So I'm stuck with those 6 GB

#

Paying 5$ per month for a service I'm not using

keen birch
#

Seriously?

silver crown
#

Yeah

keen birch
#

Contact support there?

silver crown
#

The issue is that the solution is to remove the repo

honest rune
#

and they rub it in iwth a "Purchase More" button right there too

#

Hey, is there a point where I can hook into the application start and end events (or the equivelants) without touching the message pump?

#

only thing I can think of without using the message pump is relying on a starter map to fire off some stuff at start before loading other maps. Still doesnt help for application exit though

keen birch
#

My only gripe with using VS integrated stuff for this so far is that I don't really get the amount of information I'd want

silver crown
#

What

#

It's git

#

You use it as you want

keen birch
#

Yeah I know

#

But atm I'm using it in VS

silver crown
#

command line for life πŸ˜ƒ

keen birch
#

Because I'm a newbie with SC

silver crown
#

The worse in VS is when it's stuck

keen birch
#

VS's handholding is nice for now

#

Its lack of information because of it is annoying

#

I'd like to see an upload speed and that sort of thing

silver crown
#

You could just git push in commandline for that

keen birch
#

Progress in terms of size instead of only amount of files

silver crown
#

That what I was doing before

#

Commits in VS + git pull/push in command line

keen birch
#

See I wouldn't know the difference. SC is scary.

silver crown
#

πŸ˜›

#

Slowly getting to the 50GB

keen birch
#

Lol

silver crown
#

Actually that's kinda stupid

keen birch
#

?

silver crown
#

50GB is going to take some time to upload

keen birch
#

Who'd have tought

#

thought*

silver crown
#

Half an hour I think

keen birch
#

;-;

#

It'd take double that for me to download it

silver crown
#

πŸ˜›

honest rune
#

gigabit connection?

silver crown
#

Yeah

honest rune
#

nice.

silver crown
#

1Gb/s / 200Mb/s

honest rune
#

200 up? wow. I've got 1gb down but only 30 mb up

silver crown
#

woops

keen parcel
#

3mb down, 6mb up

#

fibre comming soon apparently

keen birch
#

Cmon guys get your capitalization right

honest rune
#

lol

keen birch
#

1MB = 8 Mb

silver crown
#

Yeah

keen birch
#

The caps lacking makes it really weird

silver crown
#

He really have 3Mb πŸ˜‰

keen parcel
#

ye.. i do 😦

keen birch
#

Wow

#

Patpat

#

I know the feeling though

keen parcel
vale osprey
#

"slow WiFi" is now a synonym for low bandwidth ? πŸ˜„

keen parcel
#

well spotted

#

it's hard to get educated when there is no internet

#

#firstWorldProblems

silver crown
#

On Windows, Git does not handle files in the working tree larger than 4 gigabytes.

#

ffs

keen birch
#

Duplicate a 1GB file 50 times?

silver crown
#

πŸ˜‰

#

Seems upload is max 70Mb/s

#

😐

keen birch
#

Can't say I particularly mind that as a cap

#

That's quite a bit above your average person's upload

keen parcel
#

...

keen birch
#

Like, you're not paying for it

#

I can reasonably see why there's a speed cap

frank escarp
#

git is shit for large files man

#

i tried 😦

silver crown
#

git lfs

frank escarp
#

its still garbage

silver crown
#

Ah?

plush yew
#

hi, what should I do after NPC dies? For some reason, he gets convulsions.

frank escarp
#

git lfs stores the file locally

#

prepare for a .git folder of tens of gigabytes

plush yew
#

any idea what sould I do?

silver crown
#

@frank escarp Yeah right

frank escarp
#

also, git lfs scales HORRIBLY with number of files

#

if you take a small sized ue4 project

#

and try to LFS it all

#

LFS itself will choke to death

#

it would kill any git program you try to use

silver crown
#

Like that

#

😐

frank escarp
#

not really, only the content and source and config folders

#

but yes

#

you ned to do LFS add btw

#

andd it will choke to death

silver crown
#

It's not an UE project

keen birch
#

Like that

#

Hey it's still alive, just went to 1322

#

Thought it had died

silver crown
#

I'm not even commiting or pushing here

frank escarp
#

that code files or binary @keen birch ?

#

code works fine

#

binary LFS chokes to death

keen birch
#

Full UE4 project

#

So I suppose that's code

silver crown
#

nvm I'm disk bound

frank escarp
#

if you mean the ue4 repo in github

#

its all code

keen birch
#

No, I mean my own UE4 project

frank escarp
#

including Content folder?

keen birch
#

Yup

#

That binary?

frank escarp
#

is this the first time you push it, or you been working with it for a while?

keen birch
#

First time

frank escarp
#

check your .git folder

#

after a week

#

and the responsiveness of the repo

#

my DWVR repo was able to choke literally every git client

keen birch
#

It keeps everything in there? :p

frank escarp
#

with a .git folder of 60 gb

#

on a 6 gb project

surreal viper
#

how large that repo was?

#

oh

keen birch
#

Can't you just clear the git folder?

surreal viper
#

hmm I'm fine with my 2,5 gb

#

(without lfs)

keen birch
#

Like "I'm confident everything works in this version" -> Delete all old stuff

frank escarp
#

i tried to use LFS for the content folder btw

keen birch
#

And uh

silver crown
#

@keen birch I don't think

keen birch
#

How bad's non-LFS for UE4 stuff?

#

πŸ˜›

silver crown
#

That would remove your history

surreal viper
#

you can go up to 10 gb with gitlab without LFS

#

and it works for me

frank escarp
#

@keen birch non lfs means every time someone clones your project, it clones every version of every file ever

surreal viper
#

pretty well

frank escarp
#

WITHOUT COMPRESSION

#

10 gb will go to shit in a couple weeks

#

even on a 2.5 gb project

surreal viper
#

(small team, small size)

#

what

#

I use it for more than a year dude

frank escarp
#

how?

silver crown
surreal viper
#

we ignored everything we could

#

only source files and assets are synchronized

frank escarp
#

my git LFS (properly setup i think, on Content folder, Source and Config were in text normal git)

#

to start with, i was unable to push my whole content folder at once

#

LFS, around 6 gb

#

lots and lots and lots of assets (marketplace)

#

so i had to split it per folder, in around 6 separate commits

surreal viper
#

team size: 4
3 of us actually uses the repo, there is a code only person and 2 of us modifies levels and stuff

we managed for more than a year - no marketplace assets here tho, not even starter content

frank escarp
#

self hosted on a LAN server

surreal viper
#

we tried LFS but it was stupid so we decided not to use it

#

as long as we can

frank escarp
#

how big is your .git folder?

#

becouse it would contain every version of every asset

surreal viper
#

2.65 gb
content folder is just 2,49

Idk how is that even possible tho

#

actually I know

#

we switched repo a couple of times πŸ˜„

#

when we were in bitbucket

#

there was a 2gb limit

#

we created a new repo when we reached the limit πŸ˜„

#

it's like the 6th repo

#

history isn't that long

#

but we are on gitlab for at least 5 month now, idk why is it so small πŸ€”

silver crown
#

Few changes in the big assets?

surreal viper
#

maybe, the only big assets which are changed regulary are the levels

#

and they are not that big

#

yeah, biggest is 10 MB, that explains it πŸ˜„

#

anyway if we reach 10 gb we can just create a new repo for free kappa

frank escarp
#

thats why epic did that "built data" thing

#

so you dont put it in source control

silver crown
#

@surreal viper You should try VSTS

#

Seems really awesome

#

Unlimited storage

#

Amazing bandwidth

#

@frank escarp You're right, lfs is trash

surreal viper
#

will take a look, thx for recommendation

silver crown
#

Did 2 commits: first 1 GB, second 13 GB

#

.git is now 25 GB

frank escarp
#

told you

silver crown
#

πŸ˜‰

frank escarp
#

only perforce is good, honestly

#

and its not evne good...

silver crown
#

But it's expensive?

frank escarp
#

free for teams up to 5 epople

silver crown
#

Nice

frank escarp
#

btw, i think "git lfs prune" command cleans up the .git a bit

#

but you now need to do it after every single commit

#

and, btw

surreal viper
#

are there other limitations for perforce? or just the 5 person?

frank escarp
#

you cant prune the server

#

no

#

just the 5 people thing

#

@silver crown means your server is now 25 gb

silver crown
#

Yeah prune removes 5 GB on local

#

I know that 😐

#

Have to pay 5$ per month github for lfs because I tried it once on the wrong repo

#

repo that I don't want to delete

frank escarp
#

man for not much more than that you can get a server

#

and put perforce on it

#

with 40 gb storage

#

or more

silver crown
#

Yeah right

#

But can't undo it 😐

frank escarp
#

clone it locally

#

and keep it there

silver crown
frank escarp
#

git clones are by default a total copypaste of the server

silver crown
#

I'm at 142 stars

#

😐

frank escarp
#

thats very cool

silver crown
#

Well yes and no

#

No because I can't delete it

#

Else I loose all the stars

#

I'm not using the repo anymore

latent terrace
#

what's the min and max z-order?

frank escarp
#

@silver crown just looked at your MP video of the voxel thing

#

man thats amazing

#

it makes me think of a PvP capture the flag style game where both teams try to wall off their flag

frank escarp
#

yes

#

its super cool

silver crown
#

πŸ˜ƒ

#

Also have some nice features

#

Like custom graph editor

#

and my own C++ nativization

latent terrace
#

any UI/widgets experts here? I'd have a few questions πŸ˜ƒ

kindred viper
#

@latent terrace there is the #umg channel. should find what you need there.

latent terrace
#

already asked but nobody cares 🀷

keen parcel
#

..20 mins ago

#

give it time πŸ˜‰

latent terrace
#

I feel like z-order is completely insane

#

it doesn't work like it should for me

kindred viper
#

maybe output the zdepth of the widgets to the log and see what is going where and when

keen birch
#

Wait perforce has free hosting for <5 peeps?

#

They really need to fix their damn website

plush yew
#

Why? @keen birch

#

I been thinking about using perforce

keen birch
#

Because I've looked at it and tried to set up a local server

#

Because I didn't know it was free for small teams πŸ˜›

latent terrace
#

I don't even know how to get the z-order of widget and the internet doesn't help

plush yew
#

Oh

keen birch
#

Yeah their website really is set up by a retard imo

grim ore
#

@latent terrace if there is a valid way to set the z order it would be on the widget assuming your parent lets you set it

#

so the question would be how is your UMG widget set up for the hierarchy

latent terrace
#

I can only set the z-order of the text

grim ore
#

correct as its parent is a canvas panel which respects z order

latent terrace
#

when I added the widget somewhere and I can set the z-order there, I hope it's setting it for the blur too

grim ore
#

what is your root, the PAUSE ?

latent terrace
#

yup

grim ore
#

no, what is it

latent terrace
#

a widget

grim ore
#

it's another widget you created?

latent terrace
#

I've created a widget named pause and sent you the tree

grim ore
#

gotcha so its going to be a default root which has no z order options

latent terrace
#

any way to make it have z-order options? xD

grim ore
#

well it's the root so wherever you place this would control it's Z order

#

are you adding this to the viewport and its not going on top like you want it?

latent terrace
#

it's going nuts

#

i'ts randomly showing on top of shit that's supposed to have like 10k z-index

#

it's so weird

grim ore
#

not really

#

your viewport is flat, anything you add to it will be on the same index

latent terrace
#

unless I specify the z-index in addToViewport?

grim ore
#

if your adding a widget, its at 0. The items inside of it have their own z order based on that 0

latent terrace
#

so how should I set up my z-orders?

#

inside the separate widgets or on the main widget that's the whole UI?

grim ore
#

do you have a "main" UI widget?

#

like something that is considered your main ui

latent terrace
#

yeah

#

basically I'm trying to create a pause effect that'd blur everything

#

and it's missing some of my widgets no matter how high my z-order is

grim ore
#

are you just adding in widgets separately at different points to the viewport?

plush yew
#

Damn, 10000 members

light thunder
#

Saving to a file from unreal - what is the error log - result was zero, mean?

grim ore
#

@latent terrace basically if you have a main UI, lets call it the UI, and it's got different parts to is there any reason the pause menu is not part of it that you toggle on or off? Alternately if you have a main UI that is lets say just a canvas panel that you add all your other widgets to at design/run time you can then be sure that your pause menu is higher than the other children of that main UI due to all parts of the UI being children of it.

#

but in general if you use the add to viewport and set the z order it "should" respect that if you put the pause widget at a higher number than the rest

latent terrace
#

I'm not using the add to viewport

#

I've put things manually

grim ore
#

well at some point you use the add to viewport to add your UMG?

latent terrace
#

the UI you mean?

grim ore
#

I guess, I don't really know how your setup is setup. You have some UMG widgets you add to your viewport, say your stats and such. You want the pause to go over that which is a separate UMG Widget so your using Add to Viewport to add that one when you pause?

#

this sounds like how your setup is setup?

latent terrace
#

no

#

I've just dragged the pause to the UI

#

and set it to collapsed

grim ore
#

which is another UMG widget?

latent terrace
#

yep

#

and when I want to pause, I set it to visible

grim ore
#

what is the parent of your PAUSE widget then inside your main UI?

latent terrace
#

the backgroundBlur is not the one from pause

#

it's a separate one : P

grim ore
#

and the Pause_UI widget has a higher Zorder set there than any other widget?

#

and all other items are children of that Canvas Panel?

latent terrace
#

yes

#

vegeta would say it's over 9000

grim ore
#

what does the entire UI Layout look like?

#

in the hierarchy

latent terrace
grim ore
#

it definitely looks right =/

#

when you have it unhidden in the hierarchy there does it blur like it's supposed to in the preview?

latent terrace
#

no

grim ore
#

weird because it should. All of those items are children of the parent canvas panel so they should all respect eachother 😦

#

all I could think of is to start debugging each widget that is showing up above it in that preview window and see what might be causing it

latent terrace
#

well one of the items that doesn't work is being added by AddToViewport

#

it gets blurred when I set the z-order to negative or 0, but even 1 makes it stay visible

#

and the pause has z-index 99999

grim ore
#

this widget has it own z order when you add it to the viewport. Any settings inside of it for z order are for inside that widget only

#

adding 2 widgets, one with 1 and one with 0 will put every part of the widget with 1 above the other.

#

when you use add to viewport

latent terrace
#

so any way to blur a widget that is being added by addtoViewport?

grim ore
#

wherever you have this "blur" at would have to be higher when added to the viewport than any other widget you want blurred basically

#

this is one of the reasons having a main widget you just add sub widgets to at design or runtime can be helpful as you keep it all together

#

any reason you can't add the main UI itself at like 100 and let all the others you add to viewport be at 0?

plush yew
#

Everyone I have an official announcement.

#

Mac is for pretentious assholes who think they are superior when really they are paying for shitty overpriced 1.5 - 2 grand hardware that equals to a 500 dollar Windows PC.
Apple products are locked down like alcatraz and you can't do shit with them, no one develops for them and that is the only reason they rarely get viruses.

#

Windows master race.

grim ore
#

I develop for mac on my windows machine. Never had a problem on our deploy iMac tho.

plush yew
#

You can emulate a mac on a windows but you cannot emulate windows on a mac, is all I need to say basically.

grim ore
#

I can emulate windows no problem on a mac

#

parallels and bootcamp both work fine

#

I can even get bored and use Wine

plush yew
#

But why?

#

Why would you ever want to do that, why do you have an apple product in the first place.

grim ore
#

sometimes I want to run Everquest when on the mac

latent terrace
#

so viewport has its own separate z-index?

#

like if I use addToViewport, I manually specify a z-index for the stuff?

#

if I change the z-order on the addToViewport with UI to 100

#

how will my z-indexes change?

grim ore
#

it will put that widget at 100 which should be above everything else

latent terrace
#

yeah but how will the children behave?

grim ore
#

think of the add to viewport as adding a piece of paper to the desk. the paper has your writing on it which is your ui

#

changing the index on your paper does not change what is on it

latent terrace
#

will they all get +100 to their z-indexes?

grim ore
#

they will not have any of their indexes changed

#

the renderer draws the widget added to the viewport with the lowest order first

#

it goes thru that widget and draws everything in it like it asks to be done

#

then it does the same for the rest in index order

#

just because a widget has children that have a billion indexes does not change the order the actual widget is drawn to the screen compared to any other widgets you add to the viewport

#

basically the z order/index INSIDE a widget is for that widget only to determine how that widget is put together. Once it is all done it is basically flat and drawn in the order you tell it to add to the viewport.

latent terrace
#

so if I don't expand that hidden part of the AddToViewport, the z-index is 0?

#

thanks, it made stuff a little bit more clear, I'll try a different approach πŸ˜„

grim ore
#

yep default is 0

#

I guess a question would be why are you adding something else to the viewport other than your main ui?

#

maybe it should be a part of the UI somehow

latent terrace
#

yeah I'll try to put it in the main UI

#

as an excuse I'll say that it's not my project : P

grim ore
#

heh

floral pagoda
#

WOOO!

#

I think we are going to see some really cool stuff at GDC this year

#

Just saying

frank escarp
#

cloud gaming is impossible to do

#

physics laws are against it

#

(for full gaming, AI/physics sims are ok)

floral pagoda
#

@frank escarp That is what Cloudgine is AI/Physics, etc.

#

I am curious to see what it offers with the networking side of things

latent terrace
#

are they going to turn into UnrealCloudgine? xD

frank escarp
#

honestly, i would be interested on a cloud hosting service

#

ive seen GameLift, but a cheaper alternative would be neat

opal hornet
keen birch
#

Just a casual word of warning

#

Your blueprint structs will inevitably break

#

And when they do there's very little you can do about it besides manually rewiring everything that uses them

livid haven
#

Eh, not exactly true, but they're kind of fragile and it takes really getting them to know how to a) not break it and b) unfuck them.

worn granite
#

That caveat there is enough to hold up the previous statement IMO.

#

Though I don't really know how to unfuck them, other than not saving anything else and rolling back. So if there's some secret to it, that'd be cool knowledge to literally never use.

livid haven
#

Following my usual policies, I've never had reason to ever, ever create a UDS, so... yeah.

worn granite
#

uds?

livid haven
#

Er, sorry, that's the native class name for those. User Defined Struct.

#

I don't know what else to call them. "BP Structs"?

#

They're not BPs. They don't really share anything in common with BPs. They're both editor designable data structures though.

worn granite
#

Ah. Yeah always hear them called "BP Structs". Reason being that its closer to that context (BP), I think.

#

And C++ projects will just define their structs normally.

livid haven
#

Yeah. It makes sense on the surface that they're called that way casually. I never use them, rarely ever see them, and know them more from the engine side than from the editor side, so it don't jive with my perspective as well, but I get it.

worn granite
#

They've gotten better over time, for sure. but I can't see myself using them.

#

Just too uh. "fragile"

opal hornet
#

@keen birch it's a coincidence you say that, because i am recreating my master struct since it broke due to an engine bug

#

and broke most of the project with it

worn granite
#

master struct

#

So you know how doing that came back to bite ya?

#

Why don't you do the exact same thing again

keen birch
#

Yeah I've sort of gotten the hang of un-fucking my structs at this point

#

You break them by changing anything about them while they're in use in Blueprints

#

So that's not really something you can avoid

#

Oh migration also breaks them half the time

worn granite
#

Hey Sion. Do UDS which contain other UDS which then go onto have yet another UDS give you nightmares?

keen birch
#

Hey that's what I do

worn granite
#

Hey that's what you shouldn't do lmao

keen birch
#

UDS in a UDS to drive a blueprint with an array of UDS

#

πŸ˜„

opal hornet
#

mine broke because i saved new default values while they were in use

keen birch
#

Like I said, breaking them's kind of unavoidable

#

But I've largely learned how to un-fuck them

#

Save, restart, move stuff around in them so they recompile, recompile blueprints using them

worn granite
#

what if I told you I know a way to never break a BP struct

keen birch
#

Rinse repeat

#

I'd call you annoying

worn granite
#

even if I actually do?

keen birch
#

For telling me not to use something that's obviously created to be used

#

:>

worn granite
#

nah, nah. you can use your flimsy little toy

opal hornet
#

how do you get around using the bp structs if theyre so fragile and seemingly necessary? (im not familiar with cpp)

worn granite
#

but I know how to not break them

keen birch
#

You use Cpp structs

floral heart
#

Always create a new struct and move every blueprint over to using that one any time you change it. πŸ˜„

keen birch
#

Not that hard, really

#

Does that work though

worn granite
#

Well since you seem keen on abandoning them... go for it.

keen birch
#

Afaik that breaks foreachloops @floral heart - Foreachloops lock to the struct you initially connected, so if you change the struct type in the blueprint it'll say it's a different thing and break

worn granite
#

that's not what I was gonna say.

keen birch
#

@worn granite Tell me all about your way, master ❀

worn granite
#

'tis a simple two step process.

#
1. Plan out your game thoroughly. You want as much detail as possible. 
2. Implement everything in a data driven fashion. Do not nest structs, rather give them an FName with which you can lookup DT rows. Use them to init props.```
#

ayy now it can't break cause you won't be changing the actual structs, and the use is minimized.

#

But uh.

#

Does using C++ structs work ?

keen birch
#

Afaik it does

worn granite
#

yeah

#

so like

#

what's the problem

keen birch
#

C++ 😦

#

And I like the challenge BP structs introduce

opal hornet
#

wait so i should stay away from nesting structs?

keen birch
#

Well

#

The thing is

#

Having a single BP struct is unstable as balls

opal hornet
#

because my S_ItemInfo contained S_WeaponInfo which may have borked it

keen birch
#

Think of a block-built tower

#

You've built it too high so it's unsteady

#

So instead, you just place another tower on top of it

#

And maybe another one

#

With each tower you're exponentially increasing the odds of it completely falling apart and dying on you

#

πŸ˜›

#

Think that's a pretty good analogy on why not to nest BP structs

opal hornet
#

oh i get it now

#

welp, time to learn cpp structs

worn granite
#

if you have smaller structs which you can slap into a datatable

keen birch
#

And for those wondering why they're referred to as BP structs

#

This is why

worn granite
#

you can use FNames instead of nesting them

keen birch
#

They're structs

#

In the BP section

worn granite
#

Imma have to lean towards @livid haven's word here.

#

And I already explained why lol

keen birch
#

Well, I'd all C++ structs UDS as well

#

πŸ˜›

worn granite
#

lmao no

keen birch
#

They're structs, and they're user-defined

#

Β―_(ツ)_/Β―

livid haven
#

Sorry, was out of the loop for a minute.

#

In that context, User refered to editor-user.

#

Admittedly, sometimes user means "the engineer using this API".

keen birch
#

I'd say that's just as arbitrary as BP struct

#

Except people will understand what you're saying when you say BP struct

worn granite
#

It really doesn't make sense to call C++ structs user defined in this context.