MrZsemle Posted September 17, 2018 Share Posted September 17, 2018 Sziasztok! setCameraMatrix-al megadtam egy bizonyos helyet. Amikor visszaállítanám a játékosra a setCameraTarget-et, sikerül is, de a kamera mozgása "érdekes". Nem lehet fel, le nézni, a gyorsasága is katasztófa. Hogy lehetne ezt megoldani? Előre is köszönöm a válaszokat! Link to comment
Noname20 Posted February 24, 2019 Share Posted February 24, 2019 Szerintem használd inkább a smoothMoveCamerat itt a mozgás is benne lesz mikor lefut és szebben is néz ki Kliens oldalra be kell ezt illeszteni: local sm = {} sm.moov = 0 sm.object1,sm.object2 = nil,nil local function removeCamHandler() if(sm.moov == 1)then sm.moov = 0 end end local function camRender() if (sm.moov == 1) then local x1,y1,z1 = getElementPosition(sm.object1) local x2,y2,z2 = getElementPosition(sm.object2) setCameraMatrix(x1,y1,z1,x2,y2,z2) end end addEventHandler("onClientPreRender",root,camRender) function smoothMoveCamera(x1,y1,z1,x1t,y1t,z1t,x2,y2,z2,x2t,y2t,z2t,time) if(sm.moov == 1)then return false end sm.object1 = createObject(1337,x1,y1,z1) sm.object2 = createObject(1337,x1t,y1t,z1t) setElementAlpha(sm.object1,0) setElementAlpha(sm.object2,0) setObjectScale(sm.object1,0.01) setObjectScale(sm.object2,0.01) moveObject(sm.object1,time,x2,y2,z2,0,0,0,"InOutQuad") moveObject(sm.object2,time,x2t,y2t,z2t,0,0,0,"InOutQuad") sm.moov = 1 setTimer(removeCamHandler,time,1) setTimer(destroyElement,time,1,sm.object1) setTimer(destroyElement,time,1,sm.object2) return true end Használat + példa: smoothMoveCamera ( float x1, float y1, float z1, float x1t, float y1t, float z1t, float x2, float y2, float z2, float x2t, float y2t, float z2t, int time ) smoothMoveCamera (-1527.97180, -259.88281, 14.34688, -1555.83667, -203.45720, 19.37344, -1661.17383, -168.68188, 19.37344, -1632.46838, -138.43019, 19.37344, 8000) Leállítás: function kameraMozgasLeallitas() removeEventHandler("onClientPreRender",root,camRender) end Funkción belül csak simán meghívod ezt a kameramozgasleallitas funkciót és le is állt és vissza ugrott a játékosra 1 Link to comment
MrZsemle Posted March 7, 2019 Author Share Posted March 7, 2019 On 24/02/2019 at 18:03, Noname20 said: Szerintem használd inkább a smoothMoveCamerat itt a mozgás is benne lesz mikor lefut és szebben is néz ki Kliens oldalra be kell ezt illeszteni: local sm = {} sm.moov = 0 sm.object1,sm.object2 = nil,nil local function removeCamHandler() if(sm.moov == 1)then sm.moov = 0 end end local function camRender() if (sm.moov == 1) then local x1,y1,z1 = getElementPosition(sm.object1) local x2,y2,z2 = getElementPosition(sm.object2) setCameraMatrix(x1,y1,z1,x2,y2,z2) end end addEventHandler("onClientPreRender",root,camRender) function smoothMoveCamera(x1,y1,z1,x1t,y1t,z1t,x2,y2,z2,x2t,y2t,z2t,time) if(sm.moov == 1)then return false end sm.object1 = createObject(1337,x1,y1,z1) sm.object2 = createObject(1337,x1t,y1t,z1t) setElementAlpha(sm.object1,0) setElementAlpha(sm.object2,0) setObjectScale(sm.object1,0.01) setObjectScale(sm.object2,0.01) moveObject(sm.object1,time,x2,y2,z2,0,0,0,"InOutQuad") moveObject(sm.object2,time,x2t,y2t,z2t,0,0,0,"InOutQuad") sm.moov = 1 setTimer(removeCamHandler,time,1) setTimer(destroyElement,time,1,sm.object1) setTimer(destroyElement,time,1,sm.object2) return true end Használat + példa: smoothMoveCamera ( float x1, float y1, float z1, float x1t, float y1t, float z1t, float x2, float y2, float z2, float x2t, float y2t, float z2t, int time ) smoothMoveCamera (-1527.97180, -259.88281, 14.34688, -1555.83667, -203.45720, 19.37344, -1661.17383, -168.68188, 19.37344, -1632.46838, -138.43019, 19.37344, 8000) Leállítás: function kameraMozgasLeallitas() removeEventHandler("onClientPreRender",root,camRender) end Funkción belül csak simán meghívod ezt a kameramozgasleallitas funkciót és le is állt és vissza ugrott a játékosra Azóta már komolyabban belefolytam a lua használatába, de köszönöm szépen a válaszodat. Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now