Jump to content

Josh

Staff
  • Posts

    23,313
  • Joined

  • Last visited

Posts posted by Josh

  1. If you want help, you need to post your files.

     

    I examined this issue in the tunnels map. At first I tried capping the max force, but then I noticed the geometry had some one-sided triangles in the corners. This was what caused the controller to get thrown sideways when pushing around the corner. I uploaded a fixed .phy file.

     

    It is interesting that another problem we had early on was also due to bad geometry, and the controller was working correctly. This was caused when the player was unable to go up a step, and I looked and found the step was sloped. You can read about it in the old forum.

  2. After playing a little with a few different systems, I do like this idea. I don't like Torque3D's implementation, but the Unreal implementation is fun to use.

     

    I maintain that this won't do anything you couldn't easily do with a few lines of shader code, but I'll make one just because it is fun to play with.

    • Upvote 1
  3. Just divide the texcoord by 2.0, then add a value depending on which skin you want to use:

     

    0.0,0.0 = skin 1

    0.5,0.0 = skin 2

    0.0,0.5 = skin 3

    0.5,0.5 = skin 4

     

    You might use different normal maps for each skin, or you might just use the same one. Fortunately the shader lets you decide.

  4. This is a minimal example showing how a program can communicate. From here, you can imagine how chatting could work, and then how keyboard input could be used to control a player over a network. If the network commands are not found, just run the updater.

     

    1. Drag server.lua onto engine.exe.

    2. Draw client.lua onto engine.exe.

     

    I will continue with this, but I hope the community will jump in, too, so we can make a basic program. I will admit I am not an expert at networking. But there's not really that much going on in a networked game, because the server generally controls everything, and the clients just provide keyboard input and get back positions and other information.

    simplenetwork.zip

    • Upvote 2
  5. The default directory for the 2.3 installation is changed to "C:\Leadwerks Engine SDK" in the installer. There are two reasons for this:

     

    1. Some people have had problems in the past with Windows Vista/7 security features. I do not know all the specifics of how these settings work, but some companies are moving their installation directories to the C: drive to avoid problems.

     

    2. I am adding a lot of vc project examples, and the "Program Files" / "Program Files (x86)" thing causes problems with this.

     

    This only affects you if you want to run one of the vc projects I include in a tutorial.

  6. Make a drawer shape out of 5 boxes. Export an .obj. Run it through phygen. You now have a .phy file that contains five convex hulls forming the drawer shape. This is how concave objects are made.

     

    Maybe everything we learn during this process will make a nice tutorial.

  7. The reason instancing is used is because right now the engine does this:

     

    -Make an array of mat4s for all the visible instances.

    -Set the material/shader/textures.

    -Set the vertex buffers

    -Tell the GPU "take this array of matrices and render N copies of it". This is only one draw call that draws all instances of the object.

    -Unset the vertex buffers

    -Unset the material/textures/shader.

     

    This makes it very very fast to draw lots of copies of an object.

  8. Generally you won't need to even open Framework.bmx or edit it, so it won't be a problem, hopefully.

     

    It's not necessarily something that has to be "fixed". It's more just a bad design decision, in my opinion.

  9. Right now you can set one path for everything to be loaded from, in Options>Paths>Game path.

     

    One quick way to add more paths is you could create a script in the "Scripts/start/" folder and add the lines to register those extra abstract paths.

     

    I actually always keep the editor in a separate folder from the engine, because the source code needs to be separate.

  10. That's normal. Unless you want a separate buffer/pass for every single z-sorted object, it's not possible to have refraction on top of refraction. All particles are rendered in the same pass, even if they aren't using a refraction effect.

×
×
  • Create New...