DarkxD

CameraMatrix

21 hozzászólás ebben a témában

Hogyan működik a setCameraMatrix?
Ez azt tudja, hogy lerakja a kamerát, és beállít neki egy pontot, hogy azt nézze?
Hogyan lehet ezt mozgatni?
Hogyan lehet a kamerát, visszaállítani a játékosra?

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon

Ha programozni akarsz, tanuld meg az angolt mert ha nem nagyon nehéz lesz.

1 személy kedveli ezt

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon
Idézet BlackSy felhasználótól, Épp most
setCameraTarget(localPlayer)

 

Azért nem kell a szájába rágni :)

2 emberek kedveli ezt

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon
Idézet thegergo02 felhasználótól, Épp most

Azért nem kell a szájába rágni :)

Nem kell, persze, de vadászom a lájkokat. #Kappa. Amúgy, írta, hogy nem tud angolul. :D

2 emberek kedveli ezt

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon

Köszi mind a kettőtöknek! :smiley:
Mikor van source, localPlayer, client, .... ?
Ezekbe mindig belehibázok...

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon

Ha erre a kameramozgásra gondolsz, akkor ez a leghasznosabb kis script ami kellhet neked:

 

 

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

 

Forrás: https://wiki.multitheftauto.com/wiki/SmoothMoveCamera

 

Meghívása: (Az idő millisec-ben értendő!)

	smoothMoveCamera(honnanX,honnanY,honnanZ,hovaX,hovaY,hovaZ,idő)
	
Szerkesztve Tarack által
1 személy kedveli ezt

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon
Idézet Tarack felhasználótól, 6 perce

Ha erre a kameramozgásra gondolsz, akkor ez a leghasznosabb kis script ami kellhet neked:

 

 

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

 

Forrás: https://wiki.multitheftauto.com/wiki/SmoothMoveCamera

 

Meghívása:

 

	smoothMoveCamera(honnanX,honnanY,honnanZ,hovaX,hovaY,hovaZ,idő)
	

 

Ezt megint csak nem tudom leállítani, a setCameraTarget el... De köszi! Legalább mozog, és úgy ahogyan kell... :smiley:

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon

Próbáld akkor leállítani, mikor a kamera elérte a megadott pozíciót a setCameraTarget(localPlayer,localPlayer)-el :)

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon
Idézet Tarack felhasználótól, 40 perce

Nekem működik :)

Hát én már tényleg nem értem!
Szerver be is beraktam a  setCameraTarget(localPlayer,localPlayer) -et, és a kliensbe is....

Szerkesztve DarkxD által

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon

:laughing::laughing::laughing: Megoldva!

Egyszerűen belemásoltam a 

successfullLogin

funkcióba hogy 

sm.moov = 0

És már jó is! :grinning:

1 személy kedveli ezt

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon

Igen az is egy megoldás :) 

További szép estét! 

 

~ Tarack ~

Szerkesztve Tarack által
1 személy kedveli ezt

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon
Vendég
A téma le van zárva, így nem szólhatsz hozzá!