Hi, i am relatively new to Unreal Engine development and am starting a project. It should be a 2D movement in 3D world and I plan on moving a character by mouse click. I think i will have a lot more questions on the way but for now i need a confirmation on my idea, does it work like i imagined or not
Basically, ill set up 3D object and move a ball on top of it (camera will be fixed, top view). I plan on rotating object so i can move the ball on blue lines instead of red for example. If i got it right, to enable mouse click movement i need a NavMesh, i generate in on surface i want to move my character. Now, i want my surface to be movable only on top of the object and when i rotate it I want to have a NavMesh there.
Is this a legit approach? Can i bake NavMesh on a surface after rotating the object? Should i have NavMesh on all surfaces immediately and somehow disable all except the one on the top (if disabling is necessary at all)?
I need help with understanding how to do this, what would be a good approach to this problem
Hello! Let me see if I can help you with this.
If I’m understanding your idea correctly this is what you wish to accomplish on your project:
- have a 3d character (in the example the ball) that moves using point & click mechanics.
- This character will move along surfaces that can rotate, changing where you can move vs where it would “fall”.
- The camera would always be fixed top view.
To create movement using point and click, you can use the following tutorial: https://www.youtube.com/watch?v=o4K4tfWQL7g
I would advice against using navmesh for this and instead using the technique shown in the video. You can then use the normals of the clicked object to determine if its “right side up” before moving the character.
Let me know how it goes and I hope this helps!
Thanks for replying and providing a possible solution.
Yes, you kinda got that right about the game. Player will not fall, player will stay at the point in space where he is located before rotation of the object underneath it but can only move on the object. In future path will be a bit complicated and rotation is here so we must find a path.
I tried the solution from the video and i seems ok for now. He does use Navmesh but i guess this NavMeshBoundVolume is a bit different. Nonetheless it works. I created a used template from the video, and everything works as shown.
But, issues came when i did some changes.
I removed mannequin mesh and changed it to a sphere and also, i removed other object from the scene (like floors, walls and blue cubes) and replaced them with my object. Now i have two issues
First of all, player character does not move anymore when i click on the potential space where he could move and i dont understand why. Not sure what happened when i deleted parts of the scene or removed mannequin that could affect that.
Also, could this be adjusted so that NavMeshBoundVolume cover all parts of my shape (top parts) and not only the one seen there
Thanks again for providing support ![:slight_smile: :slight_smile:](https://d1ap1mz92jnks1.cloudfront.net/images/emoji/twitter/slight_smile.png?v=12)
Hello! Glad to see that the info is working!
Regarding the NavMeshBoundVolume for it to cover all parts of the shape, you can modify the max simplification error to super high and fix that issue. you can find it in the RecastNavMesh-Default that should be in your outliner.
The character no longer moving are you sure you only changed the mesh without deleting any of the mannequin functionality? The following video shows how to replace the mesh of the mannequin without breaking functionality:
hopefully that works, let me know if it works!
So, i decided to do everything from scratch and it worked. Kinda hehe.
I did played a bit with max simplification error attribute and i kinda got what i wanted to, i play a bit with it some more but for now its great.
What i noticed and what i dont understand how this works is this.
This is what i have set for now, player start being on top of the shape i want it to move.
This whole layout is from ThirdPersonGameMode so i want to remove everything that was prebuilt. As seen i removed everything except this plane underneath my shape.
If i remove that plane i get stuck with this
Even if i remove both NavmeshBoundsVolume and RecastNavMesh andadd new ones i cannot get it to cover my shape. Im really dont understand whats going on. Before removing the plane i could cover top of my shape with NavMesh and move on it, removing the plane removes NavMesh from it and i cannot get it back.