PrecisionRender

  • Feb 20, 2024
  • Joined Sep 12, 2022
  • 0 best answers
  • I'm trying to align a Node3D based on the average positions of 4 points. This picture illustrates what I'm trying to do quite well:
    Edit: C and D are reversed in that image. 😵

    How would I go about getting an upward-facing normal from these 4 points? Should I create two triangles and average out their normals, or something else? Currently, I'm using this solution on Stack Overflow, but it's quite glitchy and doesn't work correctly.

    • xyz replied to this.
    • PrecisionRender A plane is defined by 3 points. The fourth point may lay out of the plane defined by other 3 points. The cross product solution you linked is the best way to get the normal. So if you have points A, B and C, then the normalized cross product between vectors BA and BC will give you the plane normal, given that points are not collinear/coincident.

    • Lethn Yes, I'm not well-versed in 3D asset creation. Thanks for your reply. I guess I was wondering what this overall style is so I can research it better.

    • Hi,

      I'm wanting to create a game with a similar art style shown in the images below. However, I don't know what it's called.


      Maybe someone could tell me what it's called and tell me what the primary features of it are? Thanks.

      • I think "Neon" is close in terms of color saturation and contrast, but it's not quite right. I searched "neon game concept art" and got some sort of similar results, but it's not quite the colorful, vibrant stuff and is more like futuristic rainy, neon lit cities, which isn't quite the same thing I don't think...

        "Colorful game concept art" got better results to the example images provided, so maybe a combination of the two?

    • Hello,

      I'm trying to figure out the best way to handle level-specific logic that the players will need access to, such as win conditions, cutscenes, goals, etc. In Unreal Engine, the GameMode class handles this logic, but I'm not creating an online multiplayer game, and implementing GameMode in Godot the same way it is done in unreal Engine is probably not the best way to do this, from an ease of development and a code cleanliness standpoint.

      What would be the best way to handle such logic that all players need access to? Should I create an AutoLoad that each level modifies, or perhaps spawn the players as children of the level instead of siblings of it? My current tree structure is this:

      Main
      |_GUI
      |_GameWorld
          |_Player
          |_Level

      Thanks in advance!

    • Here's what it would look like in Blender:

      I used an array modifier with the fit type set to Curve and I created a Curve modifier to deform the mech along the curve. Is there a way to do the same in Godot?

    • Lethn No colliders, it just never occurred to me that particle trails would work. I always thought they were for dynamic purposes and not static objects. The purpose of the spline is being able to create a path that has the glow on it.

    • And, I've already tried the CSG Polygon node. That's an excellent solution... if it worked. In order to create a cross shape like shown above, I'd have to create many overlapping vertices and the UVs would be non-editable, making that solution invalid. I wish that node allowed using a custom mesh instead of having to input the coords of vertices.

    • So, I have a niche question, one I can't find a single resource on the internet for. I'd like to know how I can create a cylindrical-looking light beam line that can be manipulated along a spline. Examples of this in games can be seen in the mobile game Smash Hit:

      And in Super Mario Galaxy:

      As for technical details, I've been looking at Mario Galaxy's launch star trails. It looks like the launch stars are made of textured cross-planes, as we can see from this camera angle:

      How could I create something similar in Godot? Ideally, it'd be something that I can do in the editor.

    • cybereality Thanks for your reply! I was simply going to use a SpringArm for collisions, as it has worked well enough for me in the past. If the ideal way to create a camera would be to use a Position3D behind the player, should the player script also handle camera input? The input can then be applied to the Position3D and read by the camera.

    • I'm currently working on a third-person controller in Godot. I'm not new to creating such controllers from scratch. However, I'd like my camera to be a bit more complex than usual, like something you'd see from Mario Odyssey, where the camera only follows the player under certain conditions. Here's an article explaining more.

      What would be the best way to create a decoupled camera system that intelligently follows the player, but also allows the player to use the camera to create relative movement? Should I just include a top-level SpringArm in the player and code the logic in the player script, or should they be separate entities?