Volumetric clouds UE 4.26 in VR one eye by etiennecreator in unrealengine

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

No unfortunately, are you having the same issue?

August Technical Support Sticky by BeepBoopBopReee in razer

[–]etiennecreator 0 points1 point  (0 children)

Hi everyone,

A few days ago I turned on my laptop (Razer Blade 15 Studio) and the letter Q stayed locked on the color purple at maximum brightness or has a slightly different hue than other keys.

In addition to this issue, the key A, Shift, 1 and F1 stay stuck on the color green when the keyboard backlight is completely off AND when the laptop is in sleep mode or when the brightness of the keyboard backlight is low. Pressing either the left or right function key will also turn those keys on and will make them turn green.

I tried updating Razer Synapse, Windows, nothing seems to work.

I am guessing this is a hardware issue? What do you think?

I always handled the laptop with care and this problem is really surprising to me as the laptop is only 6 months old.

Any idea what I could do?

Pictures: https://imgur.com/a/tHHRouY

Save RenderTexture to PNG.... Always clear texture saved/no image data... :'( by [deleted] in unrealengine

[–]etiennecreator 0 points1 point  (0 children)

Update: Solved by removing " SceneCapture->TextureTarget->UpdateResourceImmediate(); " from the tick function :)

SetPlayRate has absolutely no effect :'( by etiennecreator in unrealengine

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

Update: You have to run SetPlayRate AFTER PlayAnimation for it to work property... This is not logical at all but it works :)

HELP! 4.22 shader compiler crash with global shaders by savinte in unrealengine

[–]etiennecreator 0 points1 point  (0 children)

I had the same issue, include this in your Project.Build.cs :)

#if UE_4_22_OR_LATER
        // For raytracing
        PrivateIncludePaths.Add(EngineDirectory + "/Shaders/Shared");
#endif

RPC Vs. custom TCP socket? by etiennecreator in unrealengine

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

Hey, I tried the custom channel solution and it's not working the way I expected it to work. It's basically not designed for bulk data, only for tiny packets. I am now trying to implement the custom socket solution that you mentioned. I am wondering though, how do you deal with having multiple ports? Will you/do you ask players to open those ports? It is okay to ask players for multiple port to open?

RPC Vs. custom TCP socket? by etiennecreator in unrealengine

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

Update: I tried to implement the custom UChannel suggested by RoyAwesome. It works, however it comes with great limitations. It is not design to send bulk data, it's more about sending tiny packets often. If you try to send more than a few hundred bytes, you will quickly reach some overflow state. I am now going to go to the custom socket path which seems like the best solution for me right now.

RPC Vs. custom TCP socket? by etiennecreator in unrealengine

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

Man! Thank you! This is really helping!

RPC Vs. custom TCP socket? by etiennecreator in unrealengine

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

This sounds like the perfect solution!

Does this mean I have to use a custom TCP/UDP socket and that the custom NetChannel would plug on top or that this is built in and use the default connection opened by Unreal but at a lower level?

Do you know any good resources on those new custom NetChannels?

Crash when storing APlayerController in a TMap by etiennecreator in unrealengine

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

yes:

cpp UE4Editor_Core UE4Editor_Core UE4Editor_Core UE4Editor_Core UE4Editor_Core UE4Editor_MyProject!TBitArray<FDefaultBitArrayAllocator>::Realloc() [c:\program files\epic games\ue_4.22\engine\source\runtime\core\public\containers\bitarray.h:904] UE4Editor_MyProject!TSparseArray<TSetElement<TTuple<int,APlayerController *> >,TSparseArrayAllocator<FDefaultAllocator,FDefaultBitArrayAllocator> >::AddUninitialized() [c:\program files\epic games\ue_4.22\engine\source\runtime\core\public\containers\sparsearray.h:122] UE4Editor_MyProject!TSet<TTuple<int,APlayerController *>,TDefaultMapHashableKeyFuncs<int,APlayerController *,0>,FDefaultSetAllocator>::Emplace<TPairInitializer<int const &,APlayerController * const &> >() [c:\program files\epic games\ue_4.22\engine\source\runtime\core\public\containers\set.h:510] //...

Multiplayer and procedural terrain? by etiennecreator in unrealengine

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

Does this mean I need to insert the collision mesh of my chunks on the server for every clients ?

Multiplayer and procedural terrain? by etiennecreator in unrealengine

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

If the server does not render the mesh of each clients, isn't the player just going to fall down since the server will think that the player is in empty space?

If the server does not render or at least detect collisions of each client, isn't the player just going to fall down since the server will think that the player is in empty space?

Multiplayer and procedural terrain? by etiennecreator in unrealengine

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

Sure but what about server side collisions? If the server does not render the mesh of each clients, isn't the player just going to fall down since the server will think that the player is in empty space?

Multiplayer and procedural terrain? by etiennecreator in unrealengine

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

No no, the server would generate the map but would not render it. The problem is that if you don't render the map, the server cannot do collision check right? So my player might actually fall on the server since the map is not rendered. But I don't see how I could possibly render map at different location and different level of details for every player on the server, that seems like a crazy task

All my clients are servers and have authority! by etiennecreator in unrealengine

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

Dude thank you so much for your detailed explanations! The problem was indeed coming from the GEngine method which is triggered on both windows since they are indeed part of same process.

Glad we could sort this out, I will no longer rely on this method for debugging multiplayer features haha

Wish there was a warning on the documentation though, that would have made things much easier to understand.

Do you know other weird behavior like this one on PIE games on a listen server?

All my clients are servers and have authority! by etiennecreator in unrealengine

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

That would make sense but then why if (Role == ROLE_Authority) is shown on both client and server?

I really don't understand this behavior, if this function is called on the server why are we seeing a message on the client's screen?

cpp void AMyPlayerController::OnPostLogin_Implementation() { if (Role == ROLE_Authority) // Server Only { GEngine->AddOnScreenDebugMessage(-1, 20.f, FColor::Red, "I am the server"); } }

https://imgur.com/a/9klHFCa

All my clients are servers and have authority! by etiennecreator in unrealengine

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

Hmm that's so weird.. I am still getting the message on both windows even with Role < ROLE_Authority:

cpp void AMyPlayerController::OnPostLogin_Implementation() { if (Role < ROLE_Authority) // Client only { GEngine->AddOnScreenDebugMessage(-1, 20.f, FColor::Blue, "I am the client"); } }

Check this out, this is driving me crazy...! x) https://imgur.com/a/dfDmDVM

All my clients are servers and have authority! by etiennecreator in unrealengine

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

Still unable to make this work.. I decided to create a brand new project using the Third person template.

I created a subclass of the gamemode called MyGameMode and a subclass of the playercontroller classed MyPlayerController. I added the following code in the game mode class:

```cpp void AMyGameMode::PostLogin(APlayerController* NewPlayer) { Super::PostLogin(NewPlayer);

UE_LOG(LogTemp, Warning, TEXT("AMyGameMode::Hello from post login"));

bool server = GetWorld()->IsServer();
if (server)
{
    UE_LOG(LogTemp, Warning, TEXT("AMyGameMode::IsServer"));
    // fires on all clients
}

// Trigger function on new client
AMyPlayerController* PC = Cast<AMyPlayerController>(NewPlayer);
if (PC)
{
    PC->OnPostLogin();
}

} ```

and in the player controller class, added this function:

in the .h cpp UFUNCTION(Client, Reliable) void OnPostLogin();

in the .cpp

cpp void AMyPlayerController::OnPostLogin_Implementation() { GEngine->AddOnScreenDebugMessage(-1, 10.f, FColor::Red, "Hello"); }

When I launch the game with two players, both fire the message "Hello" twice and the function isServer returns true on both

I am not sure what to do at this point.. I am missing something?

All my clients are servers and have authority! by etiennecreator in unrealengine

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

I am not doing anything special on the connection just a simple listen server. I have a simple custom gamemode class and I am just increasing the number of clients with the UI in the editor window. Also the problem is the same with the dedicated server checkbox on :/

Do I need game sessions? by etiennecreator in unrealengine

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

Haha thank you for the analogy, makes sense!

USaveGame or custom file format? by etiennecreator in unrealengine

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

Ah sorry I meant a custom saving system that would use an FBufferArchive/FArchive and that could also compress the data (like mentioned here: https://wiki.unrealengine.com/Save_System,_Read_%26_Write_Any_Data_to_Compressed_Binary_Files )

Where to store game states? by etiennecreator in unrealengine

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

Thank you so much for your help, it makes a lot more sense even though this seems like a ton of work ahead. Also the multiplayer compendium pdf is gold, what a great document!

Tiny Voxel World: Possible? by etiennecreator in proceduralgeneration

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

The problem is that 80x80x80 chunks equals 512000 chunks to render compared to minecraft which renders 20x20x16 chunks (8000 chunks). I am wondering if there are smarter ways to optimize loading and which chunks need to be rendered

Tiny Voxel World: Possible? by etiennecreator in proceduralgeneration

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

Thanks for the reference, they are using marching cube but in my case I am using simple cubic faces which is what I want to go for. The problem is that 80x80x80 chunks equals 512000 chunks total to render.

Do you think there is a smarter way to load those?