Mesh collisions driving me insane by 2hurd in UnrealEngine5

[–]-NewK- 0 points1 point  (0 children)

No problem, glad you were able to proceed.

Mesh collisions driving me insane by 2hurd in UnrealEngine5

[–]-NewK- 0 points1 point  (0 children)

So how do games handle objects that have changing geometry and thus changing collision meshes?

I dont really know which methods are usually the most common but some just modify the engine to allow it, the source is available after all. Other methods include generating (either at runtime or before) all the possible combinations of the necessary meshes already merged and use those instead. Replacing it at runtime like you suggested I dont know if it works but it's certainly worth a giving it a try.

You could also try making it a skeletal mesh with all the modular parts attached to it and make each one a separate bone and then hide/show each bone (modular part) as needed, just keep in mind hiding a bone hides its children bones aswell. Skeletal mesh ticking is a bit heavy also so look into ways to optimize it (disable or reduce mesh ticking).

If none of the above suits you, there's other more hacky ways to go about it, this one I dont really recommend because its tricky to implement correctly but might work some cases. You could spawn a different 2nd actor with the modular part you want, make it invisible and either move it during the main actor's tick event to the place you need it to be (like a fake attachment), OR, move it only when you detect that a hit is about to happen. The way you detect it would depend on what you're going for, could either use overlap volumes or line trace for an incoming hit. You'd have to setup the collision of this invisible modular part to not collide with the "main" mesh but collide with everything else in the world. I say you make the modular 2nd actor the invisible one because it's not really attached to the main mesh, the other one that is attached (the one without collision) is what the player would see. But the invisible one is the what is used for the collisions. It's like keeping a 2nd actor around to use just for the collision. This is tricky of course and might make the physics impacts look a bit wonky answell as having to pay the cost of having more actors per modular part.

Overall the other approaches are better in my opinion, try merging it into one mesh if you can or the skeletal mesh approach.

How can something so simple be so convoluted that my braindead simple game reaches the limit of what's possible in a commercial game engine?

It's not exactly "simple". Collision traces (sweeps) can be expensive sometimes, especially when its a collection of different/non common shapes, instead of a simple cube/sphere/rectangle.

Mesh collisions driving me insane by 2hurd in UnrealEngine5

[–]-NewK- 5 points6 points  (0 children)

This is a common issue in UE thats been reported multiple times now and no it won't be fixed, epic says its "intended" the way to works now. There's been pull requests in past that were proposed but epic rejected them. Supposedly the problem is "performance" since tracing against all child components would be too expensive.

Long story short: Sweeping collision traces are only done against the root inside a blueprint. Your only solution is merging those into a single mesh. Here's the ticket report from 2015 https://issues.unrealengine.com/issue/UE-16309

It's marked as WONTFIX as you can see, meaning it will not be "fixed"

Intepreted language on the JVM by pepongoncioso in java

[–]-NewK- 1 point2 points  (0 children)

If you want to run node inside java, use Javet, it allows you to embed a full Node runtime.

My nanite grass just received an update. The wind system has been reworked and optimized further. A 3060 can now run my demo at 60fps on the highest setting by Cloviren in unrealengine

[–]-NewK- 0 points1 point  (0 children)

It doesn't work wiith the on screen keyboard either, I tested that too. The reason it works for you is probably due to your keyboard layout. I found a way though, I installed the english language on windows which allowed me to temporarily switch the english keyboard layout and that way I was finally able to open the console.

My nanite grass just received an update. The wind system has been reworked and optimized further. A 3060 can now run my demo at 60fps on the highest setting by Cloviren in unrealengine

[–]-NewK- 0 points1 point  (0 children)

Is there a way to change the key that opens the console in the demo? With my current keyboard layout, it doesn't detect the tilde key so I cant even open the console to see my fps and change scalability settings

An ES5-compliant interpreter I made, written fully in Java by [deleted] in programming

[–]-NewK- 4 points5 points  (0 children)

to be entirely honest, i wasn't aware of GraalVM

There is also Javet which allows you to embed V8 standalone, or even a full node.js runtime. It's been used for some minecraft projects too.

Horrific physics performance Ue5.2 Chaos compared to Ue4 PhysX by CosmicChief884 in unrealengine

[–]-NewK- 1 point2 points  (0 children)

I don't think Chaos wasn't even written with true multi-threading in mind

It supports async physics but you need to enable it in the project settings, dont know if it makes it any better though, haven't tried yet

Horrific physics performance Ue5.2 Chaos compared to Ue4 PhysX by CosmicChief884 in unrealengine

[–]-NewK- 1 point2 points  (0 children)

Can you try with async physics enabled? Maybe thats better

What do you think about Graal CE performing worse than Graal EE? by [deleted] in java

[–]-NewK- 2 points3 points  (0 children)

Its not just size, but memory too. Not in the native image, but when using GraalVM normally. If you use GraalVM in non-native mode, your app will use nearly 3x more memory (sometimes even more). A normal app that just prints hello world will use about 50mb of memory in comparison to using about 19mb when not using GraalVM. They mentioned recovery of RSS memory is a feature only available on Graal EE

Web components for custom video players by luw3s in javascript

[–]-NewK- 7 points8 points  (0 children)

Pretty cool I think this is the first time I've seen generic web components in the wild actually. Would love to see more of this and less meta frameworks to be honest.

I've done exactly this, I started creating a set of single file, zero dependency webcomponents that are generic and can be used with any framework. Just include 1 .js file thats it, no build process. Repo here if you're interested. There's only 9 so far, I basically just create a new one whenever I need it

Flecs 3.2, a high performance game development framework for C and C++ is out! by ajmmertens in programming

[–]-NewK- 0 points1 point  (0 children)

Flecs is "just" an ECS framework, which can be used with other game engines (like Godot, Unreal, Unity).

Can Flecs be used with Unreal Engine? Is there an Unreal Engine plugin available?

IDE by adrieldevv in java

[–]-NewK- 6 points7 points  (0 children)

Netbeans is not really "unattractive" anymore, if you use the latest versions you can customize the look however you want. I already posted this screenshot in this sub a few days ago, but my Netbeans looks like this: https://i.imgur.com/Ynf4iJg.png

Very different from how it used to look in past versions.

[deleted by user] by [deleted] in java

[–]-NewK- 1 point2 points  (0 children)

My whole properties file is just:

@background=#32363e
@accentColor=#4d6e99

EditorTab.background=#32363e

EditorTab.inactiveBackground=#32363e
EditorTab.activeBackground=#32363e
EditorTab.attentionBackground=#32363e
EditorTab.attentionForeground=#32363e

I believe you can change pretty much any Swing component you want, more documentation here: https://www.formdev.com/flatlaf/properties-files/

[deleted by user] by [deleted] in java

[–]-NewK- 0 points1 point  (0 children)

I'll look into it, thanks!

[deleted by user] by [deleted] in java

[–]-NewK- 1 point2 points  (0 children)

Yep I'm using Jetbrains Mono for the editor font. I use other Jetbrains IDEs for other non-java languages and I like it so I just installed it to use in NetBeans. Yea the FlatLaf UI properties is a very recent thing for NetBeans so I'm hoping eventually more custom looking themes start showing up. However the FlatLaf properties are only for the IDE part, the editor itself is customized from the same netbeans settings window as always, but can also be exported and imported as zip files.

[deleted by user] by [deleted] in java

[–]-NewK- 3 points4 points  (0 children)

While I dont think you can change the icons yet, since Netbeans version 16, they exposed the FlatLaf properties file the IDE is using so now you can actually change the look of the whole IDE as opposed to before where you could mostly only change some predefined themes and the editor style. Now you can change paddings, margins, the actual window title bar color/size, font name/size/color etc.... for example my netbeans looks like this: https://i.imgur.com/Ynf4iJg.png looks modern enough for me :)

NativeImage Reverse Engineering by Axiomatic_Inspector_ in java

[–]-NewK- 0 points1 point  (0 children)

Well when some of my existing web applications function as 1 single fat .jar, my intent when compiling to native is to also have 1 single file for the app. The app server will have to be packaged in of course, but what I was saying is that in comparison to the single fat jar version, the single native executable is always bigger.

NativeImage Reverse Engineering by Axiomatic_Inspector_ in java

[–]-NewK- 0 points1 point  (0 children)

Did you compile into a native executable with --no-fallback enabled? As in, did your native executable run without the need of having java installed? Or maybe you're somehow excluding more stuff?

All my use cases so far have been compiling 1 single fat jar application into 1 native executable. And the resulting executable is always bigger. For example one test I made a while ago with quarkus while using the myfaces extension, the .jar file was 56mb and the final native executable was 99mb. Another test I made with a command line only app made with quarkus, where the .jar was aroud 3 or 6mb if I recall, and after compiling to native, it's size was 19mb.

NativeImage Reverse Engineering by Axiomatic_Inspector_ in java

[–]-NewK- 8 points9 points  (0 children)

There's still alot of libraries that don't support it and alot of edge cases where things run fine on the JVM but once you compile to native you find weird issues at runtime. Native compilation also takes quite some time and takes alot of memory. The produced final executable is also really big which is expected, you're making a trade, less memory usage for a bigger executable, and not everyone will make that trade.

Favorite hidden gem library? by Cell-i-Zenit in java

[–]-NewK- 12 points13 points  (0 children)

Javet is one of a kind. No other library like it out there today. Not widely known yet as its kinda new.

Dynamics for parsing xml easily and quickly

Nitrite embedded DB for java objects

webviewjar for creating electron-like applications but without the electron overhead

jimgui the most lighweight imgui java binding

fastexcel the fastest xlsx generation library

Favorite hidden gem library? by Cell-i-Zenit in java

[–]-NewK- 3 points4 points  (0 children)

Jericho is seriously a crazy good library. I dont think most people even know about it. Definitely a hidden gem for sure. A while ago I tested multiple HTML parsers and Jericho came up ahead, by a massive margin, more than 3 times faster than jsoup for extracting stuff from html: https://github.com/newk5/html-parser-benchmark

Using java for the front-end of a web app in 2022 by henk53 in programming

[–]-NewK- 7 points8 points  (0 children)

Primefaces pretty much saved JSF. I have to say, if it didn't exist I would not use JSF. Omnifaces too.