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

Regisztrálj vagy jelentkezz be, hogy válaszolhass

Csak felhasználóként kommentelhetsz.

Regisztrálj

Légy közösségünk tagja még ma! Csak fél perc.


Regisztrálok

Jelentkezz be

Már van felhasználód? Lépj be!


Bejelentkezek