#ue4-general

1 messages Β· Page 391 of 1

hot drum
#

I tried refrencing just one of them, and it did take it

#

but it only affected that one and none of the other ones

static viper
#

who taught you level blueprint?

hot drum
#

Myself

#

wait aren't you the same guy from last time

static viper
#

unteach it

hot drum
#

well that's reassuring

#

So can anyone here give me actual help or no

regal mulch
#

If both, Cannon and Platform are previously placed in the level

#

You can just make a variable in the platform

#

Make it of type "Cannon"

#

And make it Editable

#

The nyou can assign the cannon to the platform in the level

#

If that's all telling you nothing, please check the pinned messages in #blueprint and watch the BlueprintCommunication video

hot drum
#

actually the "platform" has a trigger box on it, hence the whole "on actor begin overlap"

grim ore
#

@hot drum "it casts to the class bp" which means what bp? who are you trying to tell it should not be able to fire anymore?

hot drum
#

they fire projectiles

regal mulch
#

Already told you what to do

hot drum
#

not final design lol

grim ore
#

ok so you want specific ones or all of them?

hot drum
#

Ok shit exi uhm

regal mulch
#

He should watch the blueprint communication video

hot drum
#

aight

grim ore
#

well I know he should but I was trying to walk him thru the basics lol

hot drum
#

ah I appreciate both of you

#

but how do I assign the cannons to variables

#

I already got the trigger box part down

#

so no need to set a variable for that

grim ore
#

how did you get the trigger box part done?

hot drum
#

I placed a trigger box and made a On begin overlap node

#

which starts the cast

#

to set the bool

grim ore
#

Ignoring that tho, if you are in the level BP you can click on any item in the world outliner in your level and then go back to the level blueprint and right click and add a reference to that item directly.

#

so you could do this for all of your items individually and then tell them all individually to stop firing

#

you could always add them all to an array as well on begin play and then just loop thru the array and tell them to stop firing

#

with that said using the level blueprint is bad and you will be sent to your version of hell for using it πŸ˜ƒ

hot drum
#

Idk

#

thought it was appropriate for this case

#

as it's a specific trigger box located in the level

grim ore
#

it would seem that way but if you ever wanted to do this again somewhere else you would have to duplicate all the code again

#

or... if you used a blueprint to hold the trigger box and the guns and all the parts you could make it re usable as needed in any level or project

hot drum
#

hmmm

#

makes sense

grim ore
#

it obviously works but lets say you decide later you need to remove or add a gun then you need to go back into the level bp and fix the references that are now changed and you have to remember that those things are in the level blueprint

#

someone else can't just come in for example and click on the trigger and figure out what uses it and where easily. The level blueprint was pretty much the only place to do code in the UE3DK days so it's more of a holdover than anything (even tho some stupid stuff still needs it)

hot drum
#

hmm

hot drum
#

Eyyy I got it to work

#

good stuffs

grim ore
#

yay

lofty hollow
#

how do i modify the character if it only spawns when the game is playing?

regal mulch
#

Modify the C++/BP Class?

lofty hollow
#

that sounds annoying, like its easier to just edit things in unreal imo

digital anchor
#

modifying things in unreal is the "BP Class" part

lofty hollow
#

well I meant, when you have something in the scene you can click on the detail of it and just modify it that way

digital anchor
#

that is modifying an INSTANCE

#

not the default values

#

if thats what you want, you can eighter subclass it or modify after spawning on code

lofty hollow
#

how would I modify it in c++?

digital anchor
#

if you have Blueprintable tag to your UCLASS, and right click > create Blueprint on your C++ class in editor, you can edit them in editor

lofty hollow
#

or well

#

set the default value

digital anchor
#

if you want to modify it in C++ its just a matter of writing whatever you want to modify, on constructor or beginplay

#

modify is kinda broad, what you want to do?

lofty hollow
#

well just set the default values like

#

things like this

digital anchor
#

i'd say subclass it, and edit the blueprint

lofty hollow
#

so

#

I click on the c++ class in unreal

#

create blueprint based class

#

of this class

digital anchor
#

yep

#

and when you spawn, make sure to spawn that blueprint, not the C++ parent

lofty hollow
#

wow

#

there is a whole new window thingy

#

what do i do now?

#

it doesnt seem to have all the settings

digital anchor
#

it shows settings of the selected component

lofty hollow
#

so I should edit this thing?

digital anchor
#

yea

lofty hollow
#

but now in my GameMode

#

ABaseGameMode::ABaseGameMode()
{
DefaultPawnClass = ABaseCharacter::StaticClass();
}

#

this will be wrong?

digital anchor
#

Subclass your gamemode, and it will show up to choose which class you want as your DefaultPawnClass, just choose the correct one

#

tbh

#

its easier to just subclass the gamemode

#

and choose there

lofty hollow
#

uhm

#

okay

digital anchor
#

remember to select your new gamemode on WorldSettings

lofty hollow
#

oh its working!

#

thanks man

#

there are so many small things

#

i have to like remember

digital anchor
#

yeah, things generally go like that

#

a C++ parent

#

a BP child so you can configure it

lofty hollow
#

I know that a lot of people do a lot of gameplay through BP, is it okay to just do it through code?

pallid compass
#

do it through what ever u want

digital anchor
#

yeah its a matter of preference

lofty hollow
#

seems like everyone on youtube prefers BP

#

based on that all tutorials are BP

grim sinew
#

BP is easier for newbies, and youtube tutorials aren't exactly aimed at the highest skill level most of the time

digital anchor
#

its much easier to test, and teach, than C++

lofty hollow
#

dont you have to know c++ to do BP?

spare sun
#

no you dont

lofty hollow
#

but classes

digital anchor
#

BP is a language by itself

grim sinew
#

The whole point in fact is that you don't. BP is meant to be easier for non-coders to pick up on

pallid compass
#

C++ has nothing to do with blueprint in them terms

#

Its good general engineering

worn granite
#

proper BP is not easier to teach tho

#

Like yeah you can just teach shoddy BP quite easily.

pallid compass
#

BP is x10 more forgiving than c++

#

I think they mean general engineering

#

not literally BP

#

due too the background fuckery

#

DONT CONFUSE THIS POOR GUY

lofty hollow
#

😐

pallid compass
#

BP is fine

#

Thats all u need to know for now

grim sinew
#

Also do not take youtube BP tutorials as gospel, a lot of the non-epic ones have some bad habits in them.

#

Don't be afraid to question why they're doing things certain ways and think on your own about them

frosty copper
#

Good rule of thumb, if you can't get a decent answer to "why" three times, its negligible.

sharp crest
#

||Light theme||
||Tabs vs spaces||
||Javascript sucks||
||PHP sucks||
||Java sucks||
||HTML is a programming language||
||Arrays start at 1||

#

I'm bored Whistling

frosty copper
#

Usually dont consider 'because i was taught this way/because someone told me" to be a valid reason, either ;p

#

Also, tabs over spaces any day.

sharp crest
lofty hollow
#

what? there are people that use space?

frosty copper
#

Yep... And my god is it annoying x.x

grim sinew
#

Spaces are wonderful if you want to have a risk of typos for no particular reason

frosty copper
#

Manually scrubbing the curser through lines that have spaces e.e

grim sinew
#

"Oops I pressed it 3 times, not 4, now it won't compile"

digital anchor
#

makes me remember of how everytime i open .cs files in VS, it changes from tabs to spaces, then my source control starts annoying me then suddently 10 filles are changed

lofty hollow
#

btw like, is it only me or does the unreal community feel very small?

worn granite
#

wym

lofty hollow
#

I mean, finding videos and just googling is a lot harder than Unity

frosty copper
#

Eugh, takin, Vs drove me up the wall with minute things like that

worn granite
#

good tuts are hard to find

#

and refs can be, sure.

#

there's a plethora of videos covering the basics and how to (mis)use them to reach a goal of <insert mechanic>

grim sinew
#

Well there are 16,000 people in this Discord alone...

#

But yes, Unity is significantly larger than Unreal. Unreal is pretty solidly in second place in terms of size

#

Finding videos should not be difficult however, Epic has released hundreds of hours of training content on their official youtube channel

#

And they continue to add to it constantly

sharp crest
#

There are tutorials for everything

#

Okay maybe not for everything making the Online Subsystem Steam work but for 99.9% of the things

#

About Marketplace assets... It could be better....

#

But UE4 is still better in so many other ways πŸ˜…

surreal viper
#

any idea what is it that needs to be done in order for the player controller to register key states?
it has an is input key down function I want to use to check if shift/cnrl etc. are pressed or not but it always returns false πŸ€”

#

can I check key states without setting up actions using those keys?

sharp crest
#

Probably, not sure how, why would you want that?

surreal viper
#

like this

#

nope

abstract relic
#

What? You don’t want to pay $20 for primatives doughnuts in the marketplace tbjbu? 😜

surreal viper
#

🀦

sharp crest
#

You want to check that in C++ or what

wary wave
#

normal key bindings via ini files have a setup for this

surreal viper
#

like this

sharp crest
#

@abstract relic CoolSlugEyes

surreal viper
#

@wary wave ?

wary wave
#

input settings in config

surreal viper
#

so I can't check a key state without using that key for an action binding, right? πŸ€”

wary wave
#

not from BP

#

but why would you want to do that?

#

if you have an action binding, you can check to see if shift or whatever is held for that binding

sharp crest
#

When Unity developers move to UE4

surreal viper
#

because I just do a quick prototype thing for fun so we can test our own boardgame online with some people who are far away

sharp crest
#

Jk love u pls stay

#

Why won't you use the regular input actions?

surreal viper
#

and i want to do different actions with mouse button click + modifier key combos

sharp crest
#

You can do that with the input actions

surreal viper
#

cause that's just stupid and too much work to setup, sigh

#

seems like there is no way around that

wary wave
#

it's less work with input actions?

sharp crest
#

^

surreal viper
#

what can be less work than calling a single function which checks if a key is pressed?

#

I mean obviously it is not possible here cause of reasons

#

but that would be the easiest way

sharp crest
#

A built in input system?

wary wave
#

calling a single function that checks if any combination of 2+ keys are pressed :p ?

surreal viper
#

I'm in the mouse button pressed umg function in the first place 🀷

#

anyway, thanks for the answer

plush yew
#

cmd.exe failed with args /c "C:\Users\Sahl\Documents\Unreal Projects\SahlEndlessRunner 4.21\Intermediate/Android/APK\gradle\rungradle.bat" :app:assembleRelease
help please i cant package my android project

surreal viper
#

hmm, no input function is called on my playercontroller bp, neither action binding nor direct input πŸ€”

#

never gets called πŸ€”

#

rofl

#

the function I tried to use works but I set the SetInputMode to UI only earlier 🀦

#

using UIAndGame everything is perfect, I don't have to setup anything to check if shift/cntrl/etc. is pressed or not

worn granite
#

ought to be able to ask OnKeyDown's key event about mods/mouse

#

Shift for sure.

surreal viper
#

oh that would make perfect sense, I'll take a look

#

I handle the input in UI so doing action bindings would be pretty meh for this

grim ore
#

you can handle action bindings in UI with the node that lets you handle them πŸ˜›

surreal viper
#

which is? πŸ€”

#

umg widgets does not seem to support that

#

anyway, asking key state from controller works if the input mode is game & ui

#

and since there isn't really any game, just ui in this case it does not cause any trouble for me to go with that mode

grim ore
#

Listen for Input Action

surreal viper
#

that node has a nice comment πŸ˜„

manic pawn
#

umg input is incredibly br_big_brain

worn granite
#

oh that's kinda interesting

grim ore
#

yep, not much you can do about that as all input goes thru the player controller which needs input mode to be game

surreal viper
#

but then is there any way to have any info about keys if the input is UI only? πŸ€”

worn granite
#

heh.

#

track it yourself

manic pawn
#

nope, you can't get input actions while in ui-only mode

surreal viper
#

not that I would need it right now, just interesting πŸ˜„

manic pawn
#

that would be too useful

grim ore
#

you override the key down event in the umg widget assuming it's taking input in that widget that you are overriding

worn granite
#

KeyDown Map[Key]->IsDown = true;
KeyUp Map[Key]->IsDown = false

manic pawn
#

key down event is mostly worthless as you'd have to hard code the key then

worn granite
#

then IsKeyDown is just Map[Key]->IsDown

#

Can Keys be BP Variables?

grim ore
#

keep in mind there is nothing stopping you from just binding events to a manager or something as input comes in then passing it along as needed

worn granite
#

If so, then you don't have to hardcode anything

surreal viper
#

oh there is

#

in this case it is called common sense

#

im perfectly fine with hardcoded input binding
the others will have to accept the control scheme I design, hehe

#

for a proper game I use c++ with proper input action/axis bindings

#

but imo it's pretty cool to have the option to check keys directly for some diry quick prototype thing

#

but the UI only input mode makes like 0 sense to me πŸ€”

worn granite
#

it actually wouldn't be that hard to have rebindable keys for UI input mode but you do gotta roll it entirely yourself and have some way to handle bubbling

surreal viper
#

which means that it is easier to use UI and Game and fix your game not to handle keys when you are in UI πŸ˜‰

grim ore
#

the UI mode makes sense when you just want non input to happen. prevent your dude from moving, prevent stuff from exploding, etc. You just need input from mouse/touch and such

surreal viper
#

the fact that you can't check control keys for mouse is still weird

#

it's pretty common in every rpg to add functionality to shift click, etc.

#

in UI

#

so it would make sense but it is too limited imo

willow stratus
#

Can someone give me a foliage pack

#

I have a college project and have no assets

#

Or money to buy one 😭😭😭

grim ore
#

Theres nothing stopping you from just checking if shift is down when the button is clicked tho in the UI, you can use the is shift down node in the on key down and set a bool if needed

willow stratus
#

Matthew

#

Do you happen to have any packs I can use for a level

grim ore
#

I have nothing and I am not an artist 😦 There should be some free stuff in the learn tab on the launcher like the open world collection, boy and his kite, and uhm.... the content examples and the BP examples ones

willow stratus
#

I couldn’t find any

#

😭

#

I’m failing this for sure πŸ˜‚πŸ˜­

surreal viper
#

you deserve it then tbh

#

@grim ore I know, my problem was solved when I switched from ui only to ui and game mode πŸ˜‰

grim ore
#

There are atleast 8 packages for free on the Learn tab on the marketplace that I can see that have some form of foliage in them

worn granite
#

I can give you some assets I've used for testing foliage related features in the past

#

I've got copyright & distribution rights to em, as I created them =D

ebon goblet
#

Does anyone know how to get this fov-like effect?
I want the left and right peripherals to be squished, and as you turn the camera, it un-squishes the direction you're turning towards while simultaneously squishing the opposite direction.

grim ore
ebon goblet
#

@grim ore I'll give that a try. Thank you.

placid arrow
#

ugh, making a game work well with gamepad and mouse is a hard problem.

#

its not just a matter of plug in some nodes and set up input mappings, lots of things have to be carefully considered about user experience

#

plus i have very non-standard context sensitive controls

#

:/

drowsy quarry
#

i have multiple levels and want multiple spawn EX. i have a town i head to a new location in the east i go there i want to spawn back on the east side of the city

#

anyone got a video or just general advice

shy silo
#

is it hard to make a sort of modular character creator, or are there tutorials for it?

shy silo
#

anyone got a tutorial for swimmable water in the context of a sea?

dry moon
#

A physics volume will do that

shy silo
#

Sorry I’m quite new, do you have an explanation or tutorial of sorts I can use ? Thanks for the help

dry moon
plush yew
#

Does unreal engine 4 have server software built in?

crisp fable
#

hey dudes

#

will ue4 editor run on windows 7?

manic pawn
#

it will but you should consider updating that dinosaur

plush yew
#

Does unreal engine 4 have a server software that is built in it?

dry moon
#

Yeah there is a way to make just a server build using the code

#

tho I haven't touched server stuff, you may need to google it

polar hawk
#

your name

#

is fucking hodd toward

dry moon
#

ya its me

#

hodd toward

abstract marsh
#

So, I want to model a sword and rig it.

#

I want it to be able to grow in length.

#

Does anyone know how I could accomplish this?

#

@ me or DM me πŸ˜„

abstract relic
#

Use a skeleton as you would for any other vertex deforming asset. You can either use a bone or morph target.

humble stag
#

@grim ore u around?

#

anyone knows how to change value of boolean after X secs?

#

delay doesn't seems to work for me

#

cast to BP -> set to true -> after X secs -> set to false for example

dry moon
#

Delay should work fine

#

are you sure you are setting the bool to the correct value once you initialize?

humble stag
#

correct when it is true

#

but i'm trying to set it to false

dry moon
#

Should be more like

#

if(bool = false) -> Set true - > Delay -> Set false

humble stag
#

so the idea is that it collides with my light it will be true, after i switch off the light, the boolean should go false

dry moon
#

its an added layer to make sure it doesn't constantly fire

humble stag
#

meaning i should branch after cast to npc?

dry moon
#

yeah

humble stag
#

branch -> false -> set bool to true
branch -> true -> delay -> set bool to false

#

is that correct?

dry moon
#

if(bool = false) -> Set true - > Delay -> Set false

#

you don't need to check if its true

#

if you check if its true, it'll constantly fire the delay

#

if its ticked

#

if(bool = false) -> Set true - > Delay -> Set false

#

is all you need to do

#

and you don't need to double cast either

humble stag
#

branch cond = false -> false branch -> set true -> delay -> set false

#

if i don't cast

#

i will get error

#

since the bool value is not from the bp itself but from another bp

#

still can't get it to work to set to false

dry moon
#

Ehh I don't know what you mean cond = false - > false branch

#

because you already casted it

#

you can just drag it off and use that same cast

#

you don't need to do it multiple amount of times before you want to do something

humble stag
#

basically i have to cast to set the value again

#

if not the ue4 will trigger error after i stop running

dry moon
#

Like this

humble stag
#

ah icic

dry moon
#

lol wot why wouldn't that work, odd

#

I guess just cast again, I never had that issue

humble stag
#

the BT value shows false -> true

#

the bool keys from my BT will change to true and never change back to false lol

dry moon
#

I'm guessing because you are doing two different actors

#

rather than the same one

humble stag
#

i only put up 1 actor in the scene to test

#

so can't be telling me that the one and only NPC actor in the scene is two different actors lol

dry moon
#

its just weird

#

just add the cast after the delay again and grab the same object

humble stag
#

yeah it is weird i have no idea why i have to double cast

#

ok

#

ok somehow it works now but the value displayed is not the correct value

#

but correct behavior output movement on the screen

#

@dry moon thanks for now i'll go figure out later on gtg now

dry moon
#

np good luck on the project

proven oxide
#

What starter project should i use to make a game where you are in a spaceship and you click where you want to go and you go there, (3D)

#

ie you select from a list of destinations and the ship then autoflies to the destination

spiral island
#

You could try the top down template

#

Or use the blank project and add what you need

proven oxide
#

thats the problem i don't know what i need

#

its like 3person

abstract relic
#

There’s also an rts example in the launcher. Within the learn tab

proven oxide
#

but you aren't controlling the player pawn directly

#

think eve online type of view/control

grim sinew
#

The starter projects aren't substantial. You'll need to do something custom anyway

#

Just pick one that feels right and go with it, you'll need to redo everything anyway

spiral island
#

You might as well start with the blank project because using the templates can really bloat your game

#

That starter content file made my export over 1GB

#

Once i deleted a bunch of stuff I didn’t need, I got it down to 200mb

abstract relic
#

Starters don’t have much in them regardless

proven oxide
#

πŸ˜ƒ I guess i need to research AI and pathing

spiral island
#

There’s some built in path finding routines

proven oxide
#

Its all learning

spiral island
#

Pretty easy to use

proven oxide
#

I don't like the tutorials that just say "get this pack of assets and load it up " there it's done

grim sinew
#

The engine has no built in 3d pathfinding, btw. So yeah, gonna need that 100% custom

#

Unreal's pathfinding/navmesh only works for things that walk

proven oxide
#

so a C++ project will save me pain in the future

abstract relic
#

Epic did a live tutorial of player control pathfinding a while back

grim sinew
#

C++ vs blueprint doesn't matter, you can add C++ to blueprint and you can add blueprint to C++

proven oxide
#

as its not doable in BP only

grim sinew
#

Everything you do when you make that project initially is inconsequential

plush yew
#

anybody running Unreal Engine with DXR?

grim sinew
#

Only a handful, seeing as how DXR/RTX is still a heavy work in progress and not officially out yet.

#

It's so heavily work in progress, in fact, that every 4 days it may as well be completely different both in terms of feature set and performance

plush yew
#

i know

#

is just because im using the github release

#

and im having some issues, just wondering if other ppl had the same

grim sinew
#

It would help to say what the issue is

plush yew
grim sinew
#

Well that's impressive

plush yew
#

i created a shortcut and use -dx12 -raytracing

grim sinew
#

-raytracing is no longer used, btw

plush yew
#

oh i see

#

how about dx12?

grim sinew
#

yes

#

But yeah they changed it so now you need to have raytracing enabled with a console variable

#

same way you do with LPVs

plush yew
#

project settings?

grim sinew
#

No.

#

Same way you do with LPVs.

plush yew
#

i see

#

i only have this issue when i use dx12

#

and i just open the editor normal probably dx11, it doesnt happen

#

weird

grim sinew
#

Could just be a random bug in the commit you grabbed

plush yew
#

yeah maybe

#

im going to check it tomorrow, is kinda like here in CA

#

Thanks @grim sinew

grim sinew
#

Also of course, make sure you're on the latest version of windows (1809), have the latest nvidia drivers, and have an RTX capable GPU

#

Otherwise, raytracing won't work in the first place, even if the engine decides to stop being inconsiderate

plush yew
#

im 1809

#

im running rtx 2080 in SLI

#

i was doing some shunt mods and overclocking, so i just want to test it with unreal engine

proven oxide
#

i hate that i cant afford to get a better GFX card thanks to the coin mining

grim sinew
#

Why? Ebay and craigslist have rock bottom prices right now

#

People are dumping mining GPUs for practically nothing

plush yew
#

yeah, just work more, do uber and make some extra cash πŸ˜„

proven oxide
#

I have a 960GTX atm and I would like a 1060 or 1080 GTX / Ti

grim sinew
#

You can easily find a 1080 Ti (used) for $500

#

Like, that's just the average price right now

proven oxide
#

not allowed to work another job

grim sinew
#

Which is nearly half what it launched for

plush yew
#

why not?

#

i did that, now im running sli 2080 ti on water

#

and i did shunt mod, risking losing 3k dollar in graphics card haha

#

but, is fun

grim sinew
#

Also btw, pretty sure overclocking a 2080 Ti won't increase raytracing performance

#

Since it's a different part of the chip

#

Not the CUDA cores

plush yew
#

well

abstract relic
#

I question your sanity 😜

plush yew
#

i did help me on port royal

#

im top 21 port royal

#

i cant push more because of thermal

#

i need a chiller

grim sinew
#

It'll help with rasterization parts of it, for sure. Just not sure about the raytracing

plush yew
#

did you saw raytracing fallback layer?

grim sinew
#

Which is not supported and doesn't work properly

#

Yes

#

I am familiar

plush yew
#

hahaha

grim sinew
#

The fallback layer also requires a totally different implementation, it's not plug and play

#

It's not compatible with regular RTX uses

plush yew
#

well, for ppl that doesnt have rtx, is the best that they can get πŸ˜›

grim sinew
#

Everyone has DXR, technically. It's just not enabled.

#

Since there's no point on non-RTX cards, it would be unplayable

#

Less than 1/10th the speed

#

Every DX12 AMD and Nvidia GPU could -technically- use DXR, if driver support was made

ebon goblet
#

I've got a SceneCaptureComponent2d set up and working. Is there a way to crop it so that only a specific part of the camera feed is shown?

grim sinew
#

Adjust the resolution to what you want it to be and move the camera.

ebon goblet
#

that seems to stretch the image, unless im missing something

grim sinew
#

You are.

#

Textures do not need to be power of 2

#

It's good to do it, so it can mip... but it doesn't -need- to be

#

Especially with render targets, it's a good idea to make it as low as you need

plush yew
#

i think for the sake of ray tracing

#

they need to add SLI

#

if we had SLI working on BF5 DXR

#

it would be awesome

grim sinew
#

SLI breaks a ton of effects in Unreal, so it wouldn't be 1:1 anymore. But yes, they used SLI in the star wars demo

proven oxide
#

I have so much to learn, Thanks all of you for being understanding for a newbie learning UE4 πŸ˜ƒ

plush yew
#

im a newbie too, im working at google, but i always dream to work with games

#

so, im trying to learn more about unreal engine

proven oxide
#

I work for the government as a Senior Developer but I havent done much on games except some libGDX game jam

plush yew
#

nice

#

im just a Data Analyst

#

still learning python

grim sinew
#

So you're the guy reading all my emails πŸ˜›

plush yew
#

ofcourse

#

we have access to all emals

#

emails

#

but in our training, we are not allowed to use admin and check other ppl emails

proven oxide
#

this is the game i did for a gamejam

grim sinew
#

Sad part is I can't tell if you're joking or not

plush yew
#

😎

proven oxide
#

well I have access to all criminal cases in the UK

grim sinew
#

I have my own email from my website, I just never use it because it's longer to type than gmail XD

#

I could just flip a switch and own all my own email, but I don't because it's longer to type

proven oxide
#

and used to write satelite control software

plush yew
#

but i most say, google respects a LOT ppl data

#

is very impressive

proven oxide
#

i have a friend who used to work at google, he left and now works for Linked in after a stint at blizzard

plush yew
#

nice

grim sinew
#

I'm boring, I just make pretty pictures as a 3d artist.

plush yew
#

this is my goal

grim sinew
#

Nowhere near as interesting as making spy satellites or reading everyone's emails

plush yew
#

i used to work with video editing and 3d

#

with maya

#

i did some animation and tv commercials

#

but i was not making too muich money

grim sinew
#

I'd love to see your video editing in Maya, as someone that uses Maya every day for the last 9 years πŸ˜›

plush yew
#

and ppl from india was working for way less

proven oxide
#

i have lightwave 3D had it for years

#

my dongle is getting a little old now

plush yew
#

this was my last video

#

before i moved to US

#

i just have being doing it for 2 years, and i was the only one there, so i was learning and doing the animations and rendering...

ebon goblet
#

@grim sinew Regarding the camera thing again: Is your solution appicable even if the camera moves with the player?

grim sinew
#

Surewhynot

ebon goblet
grim sinew
#

That's silly, just increase the FOV

ebon goblet
#

Is there a way to leave the center untouched by the fov though?

grim sinew
#

You're rendering the whole game 3 times when you do that, that's mildly insane

ebon goblet
#

yeah i'm slowly learning this is not the way, lol

grim sinew
#

Yes. With very advanced projection math. But you can still do it.

#

What you're doing now is absolutely insane and will make your game run horribly

ebon goblet
#

I'll scrap this idea then. Any pointers on how I'd go about setting the fov up?

grim sinew
#

The cameras already have a slider. Use it.

proven oxide
#

has anyone seen the 4D stuff done in VR?

plush yew
#

thats crazy

proven oxide
#

someone did a game with non euclidean and you have to switch dimensions to get past blockages

plush yew
#

miss euclideon hype

#

with unlimited detail

grim sinew
#

I too miss snake oil and false hope

plush yew
#

hahahah

regal mulch
#

That's def a way to make your VR player ruin the floor

proven oxide
#

Is there any way to create a cubemap that doesnt need photoshop (i will never pay their silly prices)

#

all the UE4 tutorials tell you how to do it in Photoshop

silent cloak
#

use the 30 day trial ?

proven oxide
#

I have 6 images named correctly but how to make the cubemap

#

it talks about rotations and such but doesnt explain how to turn the 6 images into the map

#

When using the NVIDIA Texture Tools plug-in for Photoshop

#

WTF i dont want to use photoshop

#

its another thing i would have to learn

#

I have the dds tools already just don't want to have to mess around with photoshop

#

i mean photoshop is expensicve

#

Β£238.42/yr

grim sinew
#

Photoshop is $10 per month.

proven oxide
#

nope Β£20 a month

grim sinew
#

No. $10.

proven oxide
#

Single App
Β£1997/mo
inclusive of VAT

Your choice of one creative app like Photoshop CC, Illustrator CC, or Adobe XD CC
Includes: 100GB of cloud storage, Adobe Portfolio, Adobe Fonts, and Adobe Spark with premium features
grim sinew
#

Not single app

#

Adobe's photography plan includes Photoshop and Lightroom for $10 per month.

#

It's the cheapest one they offer

#

Even cheaper than Photoshop by itself

proven oxide
#

what is a photography plan (20gb) max allowable files = 20gb?

grim sinew
#

20gb of cloud storage

#

You don't need that

proven oxide
#

and what is cut out of photoshop- they will not give you lightroom + photoshop for less than just photoshop?

grim sinew
#

And photoshop by itself is more expensive, yes

#

Adobe's pricing is nonsensical, just roll with it

proven oxide
#

its still Β£9.98 a month i can't afford, I would have to cancel my github, AWS and Crunchyroll

grim sinew
#

Why are you paying for Github if it's free now

proven oxide
#

not for private repos

grim sinew
#

Yes it is

proven oxide
#

then why are they still charging me

grim sinew
#

Because you didn't cancel it?

proven oxide
#

they pull it

#

its a direct debit - they have to ask for it

grim sinew
proven oxide
#

I have the pro

grim sinew
#

Okay? And?

#

Also you can just sub to photoshop for one month, cancel it immediately, and then just make all your cubemaps all at once

proven oxide
#

I HAVE GIMP why do i need PHOTOSHOP

grim sinew
#

But yeah, competition is wonderful. If Adobe makes the photography plan any more expensive, it would lose to their competition and they would lose sales

proven oxide
#

its producing an image

grim sinew
#

For the same reason that you can have blender and also need zbrush? Sometimes tools are just objectively better at certain things, and therefore are the ones to get support for various plugins and addons.

proven oxide
#

but UE4 says use some plugin for photoshop when there is a command line tool that the plugin calls

grim sinew
#

Don't get married to a program

next badger
#

Why would you need PS for making Cubemaps?

grim sinew
#

Because there aren't many ways to make cubemaps, and the ATI tool hardly works anymore on modern systems

next badger
#

use gimp dds

grim sinew
#

Not to say the Nvidia plugin is much better, the Nvidia plugin is still pretty buggy

proven oxide
#

whats gimpdds?

next badger
#

GIYF

abstract relic
#

Or just buy photoshop cs6. Not like photoshop been updated for over a decade honestly 😜

next badger
#

also, you can make cubemaps in ue4 directly

grim sinew
#

Finding a legit CS6 license is hard nowadays

#

Most of the ones still left and unregistered are pirated

abstract relic
#

Damn

placid arrow
#

quick question to anyone who's not in the uk

#

would you use the phrase "stuck a spanner in the works" or "stuck a wrench in the works"?

proven oxide
#

ok using gimp i managed it but i think either my top / bottom are either in the wrong place or rotated wrong

#

apart from that the front back left right all match

regal mulch
#

@placid arrow I have no idea what either means.

#

I know what a spanner/wrench is, but what the hell does the sentence mean?

graceful sky
#

wrench, but i would reconsider the sentence

regal mulch
#

And yes, at least in Germany I would assume "wrench" is more commonly used.

placid arrow
#

its important to the game to use that catchphrase, it means to cause issues with something to stop it from going ahead

#

like if i changed the spec on a project at the last minute that might "put a spanner in the works"

#

in my game, thats quite literally what one of the powerups does though, you put a wrench into a machine to stop it temporarily

graceful sky
#

i'd still consider rephrasing it

#

it sounds odd

placid arrow
#

to what?

graceful sky
#

almost like a direct translate kinda thing

placid arrow
#

youre saying it doesnt properly translate to other cultures

#

much like saying "the tail wagging the dog" or something

graceful sky
#

the norwegian saying with a direct translation would be to "Put a stick in the wheels"

dim plover
#

"Put/stuck a wrench in the works" is perfectly understandable here. It's rarely used... but everyone would understand it. As for a spanner, I don't think anyone here knows what that is.

graceful sky
#

according to google, "Throw" is more commonly used

placid arrow
#

so the original text would have been "put a spanner in the works; machine disabled for 20 seconds"

graceful sky
#

"Throw a wrench in the works"

placid arrow
#

perhpas instead "nice job breaking it hero; machine disabled for 20 seconds"

graceful sky
#

Personally i've never heard that phrase but that may be a me problem, and not a phrase problem

placid arrow
#

that would avoid cultural phrases altogether and instead use a trope name

graceful sky
#

Go for whichever feels better πŸ˜ƒ To your original question we seem to land on wrench

placid arrow
#

i think spanner is a uk term for wrench

#

and also an insult if you use it to describe a person e.g. "you total spanner"

#

but ive never ever heard anyone call someone a wrench

#

if i was only targetting uk i could make a joke out of that "you spanner, you threw a wrench in the works"

graceful sky
#

haha

#

you could also call someone a tool πŸ˜›

#

basicly the same

placid arrow
#

yup however iirc in america i think thats a homophobic insult?

#

here it just generally means an idiot to me

graceful sky
#

damn. i'd never guess

#

yeah same here.

placid arrow
#

urban dictionary doesnt list what i thought the issue was

#

so perhaps thats fallen out of fashion

#

it may be ok to use

#

UD says it just means a general arsehole

regal mulch
#

I also never heard it

#

What makes it hard for me is the "works"

#

But I'm also from Germany, so I don't have all the vocabulary at hand.

graceful sky
#

exactly, the works part is the offset in the sentence for me aswell

regal mulch
#

I first somehow understood you make use of a wrench by working with it

graceful sky
#

altho i guess we're pretty close in language.

regal mulch
#

If you say "Stuck a wrench in the gears." or so I would probably understand instantly what you want/mean.

#

I would stick to the actual phrase if it's important to you

#

And make sure to localize the game properly

proven oxide
#

another question, why has the skybox become so badly blurred, i have a 1024x1024 set of cubemaps but it looks like it has been shrunk down

whole quarry
#

screenshot?

proven oxide
#

just messed up my texture hang on

#

thats one of the sides

cloud cobalt
#

Try with "never stream" ticked, or mip bias changed

tough quartz
#

quick question , can i go after converting brush to mesh , go back from mesh to brush ?

proven oxide
#

Thats after importing

cloud cobalt
#

What does it look like in the content browser if you open it @proven oxide ?

proven oxide
#

ah! just switched to no mipmap

whole quarry
#

did you made that in spacescape?

proven oxide
#

I have the top and bottom not quite right

cloud cobalt
#

"No mipmaps" is probably accurate for skyboxes anyway

proven oxide
#

yep much better now

cloud cobalt
#

Since it's displayed at a constant scale

proven oxide
#

but still seems too large is there any way to make it smaller ie further away in the skybox

whole quarry
#

mine are aways ~50mb

proven oxide
#

i didnt mean size i meant apparent distance, in the skybox it looks way too enlarged not as far/distant looking as the originals

cloud cobalt
#

That might be due to your FOV settings

proven oxide
#

where can i see that?

cloud cobalt
#

The default should be in your project settings

proven oxide
#

the default was 90 100 looks better but the mesh is stretched now

cloud cobalt
#

Yeah.

#

90 is pretty much a normal value

#

You can always look for nicer skyboxes that have more detail

proven oxide
#

how can i attach a mesh to the player start? I cant seem how to do it - and I need to offset like 3rd person view

cerulean nova
#

to write into the Game & Engine .ini file i have to download the source from Github and compile the engine or is there a work around?

cloud cobalt
#

No need for either

#

You should be able to edit DefaultGame.ini / DefaultEngine.ini in your project

proven oxide
#

dont you just go into the folder and edit it

#

with notepad

cerulean nova
#

alrighty Thanks for the info

proven oxide
#

Ok, so if i want a custom player pawn i .need to make one based off the default?

#

<grumbles> why do all tutorials use demo ones and don't explain how to start from scratch

#

I think i get it, I need to make a pawn but then on the player start it will have to be changed to spawn one of mine instead of the default (changed in the default ini files)

#

please tell me if i have it wrong

placid arrow
#

@regal mulch and @graceful sky thanks for your feedback re wrenches/spanners

#

i think im trying to avoid localisation, as i dont speak any other langauges well enough, and i cant afford to pay someone to do it, i know it can be very expensive.

#

my objective is to make the best game i can on the most shoestring budget i can, even if it meant taking longer

proven oxide
#

@placid arrow where is pinky? can't he help πŸ˜ƒ

placid arrow
#

i sent him on a mission to fetch six zucchini and a marching band

#

for my plan to take over the world

dim plover
#

You can change the default pawn class in GameMode.

proven oxide
#

you know the fan theory that brain is the idiot

dim plover
#

Which you can set on a map basis.

proven oxide
#

ok i have no map at the moment

#

its a C++ project

#

it says level untitled

placid arrow
#

heh, my pawn is a camera object. thats it.

dim plover
#

Well, there's a default GameMode specified in project settings.

cloud cobalt
#

@proven oxide You've been asking beginner questions here for quite some time - You should really spend a few weeks looking at all the tutorials on the documentation pages, Learn tab, etc.

proven oxide
#

and under the content there is no level

#

@cloud cobalt I have been but a lot are based around making FPS shooters, and not what i want to do,

cloud cobalt
#

Forget about your specific project and learn the engine first

proven oxide
#

why do something i am not in the least interested in just to follow a tutorial that is needing me to buy some content pack to follow anyway

placid arrow
#

@cloud cobalt you know what ue4 lacks? an official e ntity relationship diagram showing what classes relate to what, e.g. where game instance sits, where game mode sits, etc. i saw an unofficial image showing the instantiation order of objects in PIE vs standalone, that was awesome, i think i saved it. but, nothing seems official.

#

i really struggled when i was a newbie although i consider myself pretty good with C++, ive been using it professionaly for years

dim plover
#

Brain, can you show me that image?

cloud cobalt
placid arrow
#

sure

cloud cobalt
#

This stuff is actually explained 🀷

placid arrow
cloud cobalt
#

That's from the official doc I just linked

placid arrow
#

bear in mind when i started using ue4 in 2015, about 2 months after it became free, the docs were more lacking

proven oxide
#

Stranger also a lot of tutorials are BP based, I want to use C++

cloud cobalt
#

Start with BP, use C++ later when you understand the basics

proven oxide
#

I can't do what i need to in BP

cloud cobalt
#

You very probably can

proven oxide
#

its not designed for that

placid arrow
#

@proven oxide its worth noting that not everything that can be done in C++ in UE4 should be done in C++. blueprints are designed for fast iteration and gameplay code, i suggest you stick to it unless you have a real reason not to, e.g. performance or just lack of an interface

cloud cobalt
placid arrow
#

youll thank me later :)

cloud cobalt
#

All of that is very basic stuff that's always useful

#

Including @placid arrow 's requested image

placid arrow
#

btw

proven oxide
#

ok Brain, can you show me how to make a player where there is no direct control but the camera is 3rd person a spaceship

placid arrow
#

how does HUD relate to UMG?

proven oxide
#

in BP

#

the huds are made in UMG

placid arrow
#

i get the impression from reading around that technically 'HUD' is depreciated/discouraged and instead we should just use UMG widgets (i have been using UMG for HUD since day one)

cloud cobalt
#

@proven oxide There's a Blueprint template for 3d person

proven oxide
#

3rd person space flight simulator?

placid arrow
#

but then ive not been doing third or first person games

cloud cobalt
#

@placid arrow HUD is still useful in many cases, but UMG (BP) is a pretty good tool for regular HUDs

#

HUD class is useful for rendering onto textures

placid arrow
#

i found a really weird bug with UMG recently

proven oxide
#

i also have to think about how to have the starfield generated on the fly based on where you are in the universe

placid arrow
#

i dont know if its fixed in newer versions, im still on 4.14 and ive feature-frozen ue4 for my game until release.

proven oxide
#

now thats another level of shit i am not even thinking about yet

cloud cobalt
#

@proven oxide Just start with a simple project over a month to learn the engine

#

You're trying to build a space shuttle before inventing the plane

placid arrow
#

if you place an image completely outside the bounds of the widget, and have an animation to translate its coordinates into the bounds of the image when ran, if you run that animation in some instances the image still doesn't appear, the engine excludes the image from rendering and never refreshes its cache, even if you set volatile = true

proven oxide
#

I am trying other things, i have learnt a lot about the BP system and UMG etc

placid arrow
#

it happens more often in shipping mode in standalone, so i didnt find it until i tested my copy just before i was about to push it to steam

proven oxide
#

but in the context of a fps

placid arrow
#

in the end i hacked around it using scale starting at 0.0001 and opacity starting at zero, and quickly scaling up its X coordinate and ramping up opacity to 1 before i start to slide the image in

cloud cobalt
#

@proven oxide The engine is the same for a shooter or a space sim - having shipped both of them with the engine myself

#

Just really do spend some time working on a simple project ? Setting the default pawn is pretty well covered in every introductory material

#

And read the doc

#

Seriously

proven oxide
#

yeah I get how to make a pawn in the FPS world but I am now trying C++ because someone told me you can't do what i want in a BP based system

cloud cobalt
#

You probably can 🀷

#

There really isn't that much that only C++ can do

#

Doesn't mean everything should be Blueprint either, but you rarely positively need it

spare sun
#

feel

#

free

#

to

#

mix

placid arrow
#

silly question: why is gamemode an actor?

#

shouldnt it just be derived directly off UObject and therefore be UGameMode, not AActor -> AGameMode?

#

is it somehow the top of the 'tree' of actors?

proven oxide
#

I am using this as a reference anyway

wary wave
#

@placid arrow - means it ticks and has other actor specific behaviours

#

a bit weird, but it is what it is, hehe

placid arrow
#

ah, so its just to get the relvant interfaces for it, seems a bit hacky

wary wave
#

it also means it can have actor component etc

#

which is incredibly useful πŸ˜„

placid arrow
#

but it doesnt exist in the level, as an actor you can find with 'find all actors of class' does it?

wary wave
#

I suspect it does

humble stag
wary wave
#

but I've not tried it

placid arrow
#

not that you'd need to, as you can find it via the gameplay framework

grave cloak
#

/**

  • Info is the base class of an Actor that isn't meant to have a physical representation in the world, used primarily
  • for "manager" type classes that hold settings data about the world, but might need to be an Actor for replication purposes.
    */ Comments from the AInfo c++ class
#

GameMode inherits from this class

placid arrow
#

ah, not AActor

grave cloak
#

AInfo inherits from aactor ^^

placid arrow
#

i always thought AActor was the root class of all classes with the 'A' prefix

wary wave
#

yeah, it's still an actor, it's just a specific type of actor

#

replication is another good reason for it to be an actor

cloud cobalt
#

Yes @placid arrow

#

GameMode <- GameModeBase <- Info <- Actor <- UObject

#

Reasons for Actor include ticking, replication, components, and generally more features than UObject

#

Same goes for PlayerState which clearly doesn't really need to be in the world, but absolutely needs replication

humble stag
#

Anyone is able to help on MultiTraceObjects?

proven oxide
#

?? do you mean shotgun pellets πŸ˜ƒ

wary wave
#

no, it's a function

#

@humble stag -what's up?

humble stag
#

ok so i asked in #gameplay-ai doesn't seems to have reply had to ask here let me get the photo

#

I'm trying to do if(bool == false) set to true; after 3s delay set to false

wary wave
#

this looks weird to me, what is it actually supposed to do?

humble stag
#

but i realized after the first loop, it is doing it all at once instead of the 3s delay then set to false

#

ok i shine my "flash light" at npc, if hit return true

#

since i might have multiple npc hence i am doing the multiple

#

i'm linking the bool to the blackboard's bool

#

if i removed the delay part and just set it to true

#

the blackboard's bool val don't update to true like it was before when i did a single line trace

warm palm
#

I want to use a class for a bunch of objects that have the same code but I can not retrieve data from sub classes because casting only casts to the child class. Is there any way to reference a class with sub classes.

humble stag
#

inheritance problem?

warm palm
#

yes

#

I was using an object variable

#

then when I created a class based on the first one that works the cast fails

#

it tries to cast to the orginal class not all inherited classes

humble stag
#

so u trying to make a parent class?

warm palm
#

did

#

I want to use an object var

#

that could be many diffrnet classes but all of the same base class

humble stag
#

object var -> access parent or child ?

warm palm
#

parent

#

if I understand

#

There is data that is the same for all of my base class

#

I want to get to that data but I do not know what child class is in my object refrance

#

sorry I am still new to this

wary wave
#

@humble stag - there is a better way to do this whole thing πŸ˜ƒ

humble stag
#

so object reference variable of a class trying to access its parent class @warm palm ?

#

@wary wave how ?

warm palm
#

yes

wary wave
#

what I would do is attach collision geometry to your flashlight

humble stag
#

i have it though

wary wave
#

conical, as you'd expect

humble stag
#

i changed to line trace since it works better

wary wave
#

and from there you can register / unregister NPCs on begin/end overlap events

#

when you have a registered NPC

humble stag
#

problem is i can't do that

#

thats why i went the line trace route

wary wave
#

you can trace from bones in the NPC to the source of the flash light to see if they are obscured

#

can't do that, why?

#

the above is how I've done stealth systems in the past and it works very well

humble stag
#

because the cone has a child actor

wary wave
#

since you can get %ages for how much light is case on characters etc

humble stag
#

then child actor has no such events

#

right now the tracing works

wary wave
#

I would recommend never using child actors

humble stag
#

just that the value is not getting updated into the blackboard's bool var

wary wave
#

they can be unpredictable

humble stag
#

yes but i can't make the change now

#

its a team project

#

so i can only make do what they have done

#

and try to make it work on my side without modifying their work

#

as their work on the cone is linked to other stuff that is already completed

wary wave
#

not modifying other's work is a bit strange - I mean in a real development environment things change all the time

humble stag
#

SingleLineTrace was working

wary wave
#

it's the nature of iteration

humble stag
#

so i changed to multi line trace to be able to hit multiple npc

#

so right now result hit is always true

wary wave
#

multi line trace should be able to hit multiple NPCs, yes

humble stag
#

only on multi trace the value is not updated into the blackboard's variable

wary wave
#

though the actual BP you sent over looks kinda wacky

#

for example I would never, ever put delays inside a loop

humble stag
#

yeah its kind of spagetti

wary wave
#

I try not to use them at all

humble stag
#

so how do i use timer

#

if i don't use delay

wary wave
#

what is the timer for?

humble stag
#

so i set to true, it won't auto go back to false

#

i have to do something to set it to false after awhile

#

since i cannot do overlap begin or end

#

i am using line trace

#

if hit = true

#

var will be always true but currently its not updated

#

on the blackboard's side

#

I figured it might be the setting of the behavior tree nodes

#

since i added a decorator to check if TouchLight is is set

#

I only wanted when the TouchLight = true then perform the task so the condition for it should be is set instead of is not set

#

it will update correctly if i set it to is not set

#

but it won't move

#

the task has been tested to be working with single line trace

#

but on this multi line trace its not moving for weird reasons

wary wave
#

I'm still not sure what the timer is actually for?

humble stag
#

to set the bool back to false

wary wave
#

but why?

#

what is the bool?

humble stag
#

Light hit npc is the bool in the blueprint

#

Touchlight's value will change according to that

#

right now i reversed the order in the behavior tree it works now

#

but its not moving

warm palm
#

Bonic I read what you sent

#

helpful but I still have this issue

#

selected spot is my object var

#

Spot Type is data I want that is inherited to all child classes

graceful sky
#

should it go to false once the enemy is not hit by the light? @humble stag

humble stag
#

@graceful sky yes

graceful sky
#

I think ambers suggestion is alot easier to implement than your current method πŸ˜•

#

with a collisionbox

#

on beginoverlap/endoverlap

humble stag
#

ok i found out the issue

#

someone accidentally remove the navmesh vol

#

no wonder no movements -.-

#

ok now left the setting back to false part

graceful sky
#

makes sense, but still the method is... unorthodox at best πŸ˜›

warm palm
#

Is there a good way to get inherited vars if you have an object reference.

humble stag
#

@warm palm can't think of it right now sorry i have to solve my issue first

warm palm
#

Thanks for your help

#

I wish I could help you

humble stag
#

@graceful sky well there are so many approaches, i have to at least complete this unorthodox way to make it work

#

@warm palm np man

graceful sky
#

I wont argue that πŸ˜› a hundred ways to reach the same goal. You'll notice if it becomes a problem later on. If not, then all good ^^

humble stag
#

trying to figure out some minor details

#

now it works somehow if i put the task move away on both sides

#

but if i remove on the is not set 's side it won't move the way i wanted

#

so i'm guessing there's some inbetween steps missing to pass the bool val

#

ok @graceful sky i have checked the value is indeed false at the end but it is not updated into the blackboard's bool value from true to false

warm palm
#

I think I understand my issue better now

#

How do I cast to a parent class so that I can do things that are inherited by every sub class

humble stag
#

I think that might work u can try first

#

ok finally solved my issue can move on to the next npc type lol

warm palm
#

I figured it out

#

I actualy understood how casting and classes worked I just had an diffrent error at the same time. I just thought because I was new to really using classes I had a mistake there. Thanks for the help

ruby robin
#

Guys, what is RHIT in UnitGraph?

grim sinew
#

Rapid Hamster Interface Terminal

fierce tulip
ruby robin
#

Cmon.. It says 48ms and I have no idea, what is that

whole quarry
#

48 milliseconds

regal mulch
#

I assume the Rendering Hardware Interface

fierce tulip
#

I vote its about hamsters :p

regal mulch
#

Basically a high level interface to make rendering stuff platform independent

#

Which then, depending on the platform, calls the lowlevel stuff

#

And RHIT might just be the task behind that

plush yew
#

hi, has anybody worked on ndisplay ? I am looking for some help.

ruby robin
#

@regal mulch But why is it so high?

#

I get it on android device on a simple scene. Check #mobile

manic pawn
#

it's a thread that processes the command lists generated by the render thread and submits opengl commands

latent moth
#

Hey all, is there a way to make collision work for a masked material to a trasparent (glass), for GPU particles with mesh distance fields enabled? I basically have lateral moving snow particles that I'd like to remain out of the window

humble stag
#

Question

#

Sequence 0 work, Sequence 1 doesn't update the value on blackboard any idea on this?

#

both have same implementation

fierce tulip
graceful sky
humble stag
#

cast worked

#

the npc in the scene has the correct output on the details

#

the printing all are correct

#

but somehow the blackboard's bool value is not setting it ?

#

hmm let me try remaking a bp to do it then

#

oo somehow making a new blueprint works solved lol

brisk osprey
#

Any good tips and tricks on foilage when it comes to lightmap res and optimization ?

wary wave
#

panic

#

but more seriously, I would keep them either low res, or dynamically lit

#

most foliage moves anyway, so being dynamically lit makes some sense

brisk osprey
#

Is 8 a good res for small spread around foilage ?

wary wave
#

depends on what 'small spread around foliage' is and what your use case is

#

but 8 is quite low, so it might be

brisk osprey
#

So not sure if a scene like this can have higher res cause its not some mountains filled with foilage or if I should just keep it low at all times

wary wave
#

I'd imagine you're not rendering all the foliage all the time though

brisk osprey
#

Ahh I see!

#

hahah just afraid

wary wave
#

you can always set your res to one thing, do a lighting build test to see what it looks like and how much memory you're using

brisk osprey
#

Thanks Amber, just one more thing do I see the memory usage at static mesh lighting info ?

wary wave
#

can't recall where you'll see the info, but running the game you can use stat commands to see memory usage etc

#

there are also profiling tools, though not the easiest to use

brisk osprey
#

Ah yes the profiling tools! Thank you πŸ˜„

edgy totem
#

Hey, i'm trying to create something where there are multiple 'pedestrians' controlled by an algorithm. Each has its own velocity, goal etc defined in C++ code, to implement collision avoidance between them I need each pedestrian to be able to see all of the others variables to check if a collision will occur, what would be the best way of going about this?

wary wave
#

look into RTS path / avoidance techniques

#

there is no easy answer to this question as it's tremendously difficult

#

out of suspicion though, you're like the fourth person to come in here asking this in as many weeks

#

what is this for?

abstract relic
#

Wonder if it’s an application test

#

Or more likely, a school assignment

humble stag
edgy totem
#

@wary wave Am i? I'm working on a implementing a collision avoidance model to make a crowd simulation

wary wave
#

last one asking was something to do with a city builder

#

but in any case, most games avoid doing this kind of thing

edgy totem
#

well that throws a spanner in the works lol

grim ore
#

@humble stag that would not be the way to do it unless the AI behaviour tree was controlling the player

wary wave
#

also, why would you damage a player from a behaviour tree task 0_o?

#

@edgy totem - it's hard, but it is a common problem for RTS pathfinding, so there are probably quite a few articles out there

#

but a large amount of the implementation is going to depend heavily on the absolute specifics of your requirements

regal mulch
#

How "long" is acceptable for an optionsString when openeing a level?

#

I'm passing quite a lot of data atm :D

#

Most of the gameMode settings

shy silo
#

How do I make a hole in a mountain made with landscape brush?

sudden agate
#

@regal mulch shy not using SaveGame ?

regal mulch
#

Cause that stuff is able to be passed to a DedicatedServer on startup

#
  • that's kinda what the options are for
graceful sky
#

Savegame is also slow :p

sudden agate
#

Ah I see. I thought you want to start a Map with Options

graceful sky
#

Mine was 26mb and took like 8 seconds to load

#

Ok dont quote me on 8. But it was slow as hell..

regal mulch
#
FString UHLFunctionLibrary::ToOptionsString(const FHLOptions& Options)
{
    FString OptionsString = "";

    OptionsString += "?game=" + Options.GameModeShortCode;
    OptionsString += "?" + OPTION_MAXPLAYERS + "=" + FString::FromInt(Options.MaxPlayers);
    OptionsString += "?" + OPTION_BOTCOUNT + "=" + FString::FromInt(Options.BotCount);

    if (Options.bRequireFullLobby) OptionsString += "?" + OPTION_REQUIREFULL;
    if (Options.bRequireWarmup) OptionsString += "?" + OPTION_REQUIREWARMUP;
    if (Options.bRequireMinPlayersToStart) OptionsString += "?" + OPTION_MINPLAYERSTOSTART + "=" + FString::FromInt(Options.MinPlayersToStart);

    if (Options.bMapVoteEnabled) OptionsString += "?" + OPTION_MAPVOTE;

    if (Options.bOvertimeEnabled) OptionsString += "?" + OPTION_OVERTIME + "=" + FString::FromInt(Options.Overtime);

    if (Options.bTeamDamageEnabled) OptionsString += "?" + OPTION_TEAMDAMAGE;
    if (Options.bAutoBalanceTeamsEnabled) OptionsString += "?" + OPTION_AUTOBALANCE;

    if (Options.bRespawnByHandEnabled) OptionsString += "?" + OPTION_RESPAWNBYHAND;
    if (Options.bWaitBeforeRespawnEnabled) OptionsString += "?" + OPTION_RESPAWNWAITTIME + "=" + FString::FromInt(Options.RespawnWaitTime);
    if (Options.bForceRespawnEnabled) OptionsString += "?" + OPTION_FORCERESPAWNTIME + "=" + FString::FromInt(Options.ForceRespawnTime);

    if (Options.bForceWarmupEnabled) OptionsString += "?" + OPTION_FORCEWARMUP;

    if (Options.MapCycle.Num() > 0)
    {
        OptionsString += "?" + OPTION_MAPCYCLE + "=";
        for (int32 i = 0; i < Options.MapCycle.Num(); i++)
        {
            OptionsString += Options.MapCycle[i].ToString();
            if (i < Options.MapCycle.Num() - 1)
            {
                OptionsString += ",";
            }

        }
    }

    return OptionsString;
}
sudden agate
#

Who says you should save the SaveGame Object on disk?
You can easily use it to transfer data from A to B

regal mulch
#

There is currently a lot that gets passed into the options string

#

Specially the map cycle

sudden agate
#

isnt that more like stuff for a Config ?

regal mulch
#

But well as long as it doesn't break

#

Also no, as the player can change that in the hostMatch UI

sudden agate
#

Didnt you say you open the game with Arguments?

regal mulch
#

Both

#

ListenServer and DedicatedServers are supported

#

ListenServer uses the Options when opening the level, while the DedicatedServer gets them passed when being created.

sudden agate
#

oof

regal mulch
#

All fine, I will just see if that all works out

#

In the end it's just a string

#

can't be that brutal

sudden agate
#

I can imagine that this becomes really slow. since you need to parse the string every time you want to get an option

regal mulch
#

Once when the Server loads the map

#

Now the big question is, can I get my hands on the options string later on

#

Apparently I can

#

Awesome

graceful sky
#

Guess i just never thought about not saving saveobjects to disk. Would it be faster to push it into a savegameobject variable and push that instead ?

edgy totem
#

@wary wave Well my plan was for each pedestrian access the position and velocity of the others in the simulation, so that they can work out their future position to see if a collision will occur

wary wave
#

that'll get exponentially expensive the more pedestrians you have

edgy totem
#

well the plan is only to have 5-10

#

at least for a first attempt

regal mulch
#

You also won't get much more simulated with these solutions

wary wave
#

I dunno, for this kind of thing do it right or don't do it at all, hehe

regal mulch
#

If you have 10k peds you will have to make sure to filter them all

#

And it will still go downhill

wary wave
#

for 10k pedestrians I would probably start looking at compartmentalisation and flow mapping

regal mulch
#

Welp, it works with normal navigation too

edgy totem
#

Well what i'm doing is implementing a collision avoidance paper, following their algorithms so i have to do it their questionable way

regal mulch
#

But yeah, flow mapping is def a good thing

glacial pecan
#

at the last unreal academy, there was a session which showed a pedestrian simulation using animation baked into a texture using a shader that was essentially "free"... I want that demo...

cloud cobalt
#

We've implemented collision avoidance in 3D (space combat) for 20-50 objects at a time

wary wave
#

@glacial pecan -that sounds like flow mapping

regal mulch
#

The idea of using velocity of the agents, together with the radius and stuff, to calc for all of them where to go to not run into each other is good

abstract relic
#

It still just sounds like a boid system to be honest

regal mulch
#

But also heavy

wary wave
#

it'll rapidly spiral out of control performance wise, hehe

regal mulch
#

Well you def won't get 10k peds on your screen with simply spawning Characters haha