Jump to content

YouGroove

Members
  • Posts

    4,978
  • Joined

  • Last visited

Posts posted by YouGroove

  1. Absolutely NOT if you are a Linux user and payed for Linux.

     

    Reading Josh post it just seems Linux is still more complicated and consuming lot more time then Windows.

    Be rassured , i'm not the LE3 Linux developper laugh.png, and this is not the topic here.

     

    The only thing that has not been removed and that i want is plugin feature to unleash LE3 power.

  2. Linux has been somewhat frustrating, because it consumes ten times more special attention than Windows or Mac

    Ten times more attention it seems Linux is just as annoying as Android. Windows and Mac only could have been the best option perhaps.

     

    That's what I mean when I say the tutorials are like a specification of the user experience. It forces us to be firm about what the right way to do things is. This is really good because it means we all understand how things work, and real improvements can be made if something isn't up to par. If we're all sort of crafting our own workflow, then those issues never get discovered.

    If you make a vote, i think the majority of people will ask drag and drop instead of what you think is the best way.

  3. - I initialized 20000 Pivots (without using or modifying them, just a simple Pivot::Create) and it took about 88mb.

    The problem is within the Pivot object in LE3 to take so much memory, compared to a really empty "node" object you can find in JME3. I doubt i'll have 2000 pivot in a scene level, specially when it's not a open world.

  4. A traditional FPS would need only two to three at tops, one for crouched and one for standing and maybe one for prone.

    And that's only if you want to let the AI even use these height levels for navigation as well, which a lot of games don't. (Just think about how many fps you have played where AI can't follow you into air vents. The answer is "almost all of them".)

    I'm not making FPS games, i don't need crouch , read again rolleyes.gif

    If you don't see what is character custom collisions and using a navmesh independent of character collisions and size , jut take a look how it is done on Unity for example and how people manage that.

    Anyway it's just a very old topic and only a pure suggestion, i dig it up because making the voxel style game prototype i encountered the same old problem that LE3 has with character collisions.

    It's just a suggestion , nothing very needed as people make games in LE3 without any problem, so it's just a small personnal wish laugh.png

  5. the choice was Initializing a Pivot object with tons of properties and methods vs a single Vec3.

    A pivot is an empty object and initialisation is just done one time at game start on the entity start() function, so i don't think it is some optimisation needed here.

    Benefit of pivot is having having game level modifications is also more easy as you just move pivots visually, and you can't loose lot of time gathering coordinates and enter them if you had a big level with thousand platforms.

    It would be anti level designer productivity laugh.png

  6. Of course, you could fit characters under door cracks but sometimes that's not a concern.

    If you make some open world or RPG game you will never have door cracks problems rolleyes.gif , specially if you use the Skyrim formula where indoor are loaded maps.

     

    And I wonder how hard it would be to allow this to be done in Lua

    http://www.leadwerks.com/werkspace/topic/7958-navigation-without-physics/#entry62851

    Yes the FindPath() would be usefull in Lua.

    And for beginners a new character controller allowing any physic size.

     

    Most people are making FPS games in LE3 , so i think only few of us are disappointed with LE3 character controller rigid limitations laugh.png (and we can only prototype on another 3D engine for characters, monsters etc ... and any collision sizes).

  7. Great news for 3D coat users smile.png

     

    A all in one software and super simple to use.

     

    http://3d-coat.com/3d-coat-45/

     

     

    Key features introduced in 4.5:

    • Physically Based Rendering & Smart Materials!
    • Groups for Paint Layers!
    • New Symmetry modes!
    • Seamless painting over multiple UV meshes!
    • Bas-relief and Undercuts now have Tapering angle. Useful for 3D-printing.
    • AntiBump smoothing method for sculpting! Allows achieving ideally smooth surface even on a high-frequency detailing.

    Key Updates in 4.5:

    • Multiple Paint Room changes, incl. Compatibility/GGX/Blinn-phong shading; HDR support for panoramas and a lot more.
    • Numerous Retopo/UV/ Render Room Changes, incl. Retopo with symmetry improved; New Retopo tool – Scaleimplemented and a lot more.
    • Multiple Sculpt Room Changes, incl. New style for Primitives UI; Constructor tool introduced; Tapering implemented and a lot more.

    • Upvote 1
  8. I wonder if this might be easy for Josh to change - to have the character collision detection be customizable like other collision shapes

    He can easy make two solutions :

     

    1) Access to Navmesh path points

    Give us a function returning the navemesh vertex data table.

    And we will use it with our own character sizes and collisions, we will make our own character physic movement.

    So we could simply use any physic shape and use our own radius and specific collision shape.

     

    2) A simplified character controller without size restriction.

    A simplified character controller that won't care about collision, but that will only does it's job : make the character navigate on the navmesh.

     

     

    I agree, you can't even implement a proper crouch with that even in an FPS. It should really allow more adjustments.

    If your game is not some FPS and contains animals, creatures of any size, the actual LE3 character controller is not usable.

    Beginning the Voxel game style, i just found that this very old character controller is just too much restricted and make it not possible (see my picture above).

  9. Just regarding this, it might help if you added your own additional collision shape and detected against that instead

    If you use LE3 character controller you have the cylinder collision and you can't remove it sad.png

    And throwing any physic objects will collide with the cylinder where there is no character parts visible.

     

    LE3 would need to get flexibility about Character controller collision, or some option to disable character controller collision to use our own. It is too FPS centric today for characters and not suited for other RPG games when it comes to characters collision.

  10. LE3 is too much FPS centric compared to others 3D engines, it lacks flexibility on the character controller side.

     

    For example i have some ennemy and the character collision is just too bad, specially if you throw object at it , the collision will appear in the air without touching the ennemy visually.

     

    Why not proposing to Lua users :

    1) a navigation function that would return all navigation points , so we could use navmesh data and use our own collision and physics movement.

    2) a new character controller, not FPS centered (no crouch), that would use some adjustable collision capsule or our own collisions.

    post-3271-0-85497200-1432991519_thumb.jpg

  11. That's great.

    About workflow i would use Pivots instead of having to enter values : it's a old programmers hard and long way of making games laugh.png

    Instead of having to gather the coordinates in the editor each time, you place pivots that are visible in the editor so you have instant feedback where your platform will move smile.png, and you just bind pivots to your script with drag and drop.

  12. Simple and basic smooth TPS code, based on Rick's game and enhanced to have smooth movement.

    Enjoy happy.png

     

     

    
    import "Scripts/AnimationManager.lua"
    
    Script.Camera = "" --entity
    Script.cameraOffsetZ= -7 --float
    Script.cameraOffsetY= 3 --float
    function Script:Start()
       --self.btnExit = Button:Create("Exit", 0, 0, 100, 50, self, self.btnExit_Click)
    
       self.playerMovement = Vec3(0,0,0)
       self.cameraYaw = 0
       self.cameraPitch = 10
       self.dx = 0
       self.dy = 0
       self.mousePos = 100
    
    
    
       self.moveSpeed = 10
    
       self.baseAnimMgr = AnimationManager:Create(self.entity)
    
       self.entity:SetKeyValue("type", "player")
    
    
       self.state="idle"
       self.attackName=""
    
    end
    
    function Script:UpdateWorld()
    
       self.entity:SetRotation(0,180,0,true)
    
       self:Movement()
    
       self:CameraRotation()
    
       self:Animations()
    
    end
    
    
    function Script:attackEnd()
        self.state="idle"
    end
    
    function Script:CameraRotation()
    
       -- rotate yaw and tell the player about it so the character can use it in SetInput()
       local mpos = App.window:GetMousePosition()
       self.dx = Math:Curve((mpos.x - self.mousePos) / 10.0, self.dx, 3.0 / Time:GetSpeed())
       self.cameraYaw = self.cameraYaw + self.dx
    
       -- rotate pitch
       self.dy = Math:Curve((mpos.y - self.mousePos) / 10.0, self.dy, 3.0 / Time:GetSpeed())
       local pitch = self.cameraPitch + self.dy
       if pitch > -25 and pitch < 55 then
           self.cameraPitch = pitch
       end
    
       -- reset the mouse position
       App.window:SetMousePosition(self.mousePos, self.mousePos)
    
    end
    
    
    function Script:Movement()
    
    
       -- handle player movement
       self.playerMovement.z = ((App.window:KeyDown(Key.W) and 1 or 0) - (App.window:KeyDown(Key.S)and 1 or 0)) * self.moveSpeed
       --self.playerMovement.x = ((App.window:KeyDown(Key.D) and 1 or 0) - (App.window:KeyDown(Key.A)and 1 or 0)) * Time:GetSpeed() * self.moveSpeed
    
      if  self.state=="attack"  then
        self.playerMovement.z=0
      end   
    
       if self.playerMovement.z > 0 and self.state~="attack" then
           self.state="walk"
       end
    
       if self.playerMovement.z == 0 and self.state~="attack" then
           self.state="idle"
       end
    
    
       -- move the camera to the player and set the yaw from 3rd person view
       self.Camera:SetPosition(self.entity:GetPosition(true), true)
       self.Camera:SetRotation(Vec3(self.cameraPitch, self.cameraYaw, 0), true)
    
       -- offset the camera up and back
       self.Camera:Move(0, self.cameraOffsetY, self.cameraOffsetZ)
    
       -- rotate the model along with the camera
       self.entity:SetRotation(Vec3(0, self.cameraYaw +180, 0))
    
       -- move the controller in the rotation of the player
       self.entity:SetInput(self.cameraYaw, self.playerMovement.z, 0 --[[self.playerMovement.x]], 0, false, 1)
    
    
       if App.window:MouseHit(1) and  self.state~="attack"  then
       self.state="attack"  
          self.baseAnimMgr:SetAnimationSequence("attack", 0.01, 50,1,self,self.attackEnd)   
       end
    
    end
    
    
    
    function Script:Animations()
    
       if self.state=="idle"  and self.state~="attack" then
           self.baseAnimMgr:SetAnimationSequence("idle", 0.005, 200)
       end
    
       if self.state=="walk" and self.state~="attack" then
           self.baseAnimMgr:SetAnimationSequence("walk", 0.01, 200)
       end
    
    end
    
    
    
    function Script:Draw()
    
       -- the order we put these in matters!
       self.baseAnimMgr:Update()
    
    end
    
    
    

     

     

    All movement is in UpdateWorld() because you'll get smoothed physic movement instead of jittering one.

    • Upvote 2
  13. When i want fun robot modeling i just dive in Droid planet.

     

    More mechanic design , less cynbernetic :

    - Slow movement and slow turning speed

    - 4 auto Guided missiles

    - 2 main heavy damage guns

    - Termal vision : no visibility hidding possible

    - Two special attacks

    bigrobot.jpg

     

    bigrobot3.jpg

     

    Variation

    bigrobot_Variation.jpg

    • Upvote 1
  14. It's an integrated chip. Lowering all quality settings will help, but it won't run any faster than Intel graphics.
    blink.png

    Radeon chips runs always faster then Intel integrated chips on laptops, you have switchable graphics option in Catalyst software menu.

     

    I get with average level only around 12-19 Fames/second

    Can you tell running what game demo ? And the resolution and quality setting ?

    Make sure LE3 software runs on the Radeon using catalyst menu and looking at switchable graphics option.

     

    On my laptop = Radeon HD 7600M , running LE3 FPS demo (AI and Events) i got 25-30 fps.

    So your AMD Radeon HD 8400, should run with even better frame rate then mine rolleyes.gif

  15. Some points after testing it :

    - 2.5D is not possible in LE3 as collisions will make the character move in Z axis ( or is the script for 2D sprites without 3D collisions ?)

    - I changed the values for the parameters of the camera and it has no effect, the camera is still very far from character.

    - Giving a script without explaining how to use camera parameters and their effect is not very usefull.

  16. Yes you are right Josh.

    It was not LE3 bug , but only my bug laugh.png

    Removing the game speed and the character keeps a constant movement without any lag.

     

    BUT

     

    No post effects and changing Quality = 2 , there is small lags , not important , but noticeable (running on GTX 960).

    I would expect a linear slow down,like games where you put high graphic options the game physics just slow down as much as the graphics , but we don't see some sudden deceleration and some acceleration after.

     

     

    I changed the code to capture the minimum fps, and many times it falls down from 200fps to 30fps blink.png

    post-3271-0-44396500-1432332184_thumb.jpg

    • Upvote 1
  17. Hi,

     

    I submit that as bug because the physics just lags when you keep running forward after a certain time.

     

    I have a running example, just press forward to reach the big green cube for in front of the player for example or just always keep running don't stop, and you'll see physics decelerating than accelerating a lot.

     

    How to test :

    -Dezip and put forlder "custom" at the root directory of your project

    -Put the map file in your map directory

    -run the game

    -keep running forward during 30 seconds or more.

    voxels.zip

    post-3271-0-86140100-1432325550_thumb.jpg

  18. Hi,

     

    It's trange i updated "My Game", then running it it uses default 1024*768, i got the frame rate able to drop to 30 fps many times like before.

    I just upgraded to a new GTX 960 for the desktop, i can't image to have such frame rate drop in a simple level.

    Does someone has the same problem ?

    post-3271-0-26798500-1432325002_thumb.jpg

  19. @macklebee :

    This is another problem not related to constant frame rate and VSync. This is lag not Vsync dropping the frame rate.

     

    Demo included, how to test :

    -Dezip map file in your map directiry

    - move 3dPerson.lua script to your "Scripts/Objects" directory

    - launch the game.

     

    How to have lag :

    -move the character forward and click many times on left click (it calls attack function even if animations are not visible and playing); clicking many times and keeping moving forward you'll notice physic lags like character slowing down then a quick accelerations.

     

    This means no way to go for TPS games in LE3 on my side with that issue.

     

    ---------------------

    Character collision physics has some core issues, if you put by code the camera FPS behind the player and make the model visible you will see physics jerking a lot. I think this lag is related to the character controller.

    lag.zip

×
×
  • Create New...