@ターゲットver2（カメラ効果）
--track0:傾き,-3600,3600,0
--track1:焦点距離,-5000,5000,0
--track2:位置差ms,-10000,10000,0
--track3:視点差ms,-10000,10000,0
--dialog:対象レイヤー,layP="@1";X/chk,checkX=1;Y/chk,checkY=1;Z/chk,checkZ=1;カメラ位置上限,jougen=10000;カメラ位置下限,kagen=-10000;


layp=string.gsub(layP,"@","")
layn=layp

if(string.match(layP,"@"))then
	layn = obj.layer+layp
end

offtime=obj.track2
tofftime=obj.track3
DD=obj.track1
CRZ=obj.track0
max=jougen
min=kagen

--valueの上限と下限をカットする関数
function cut(value,Max,Min)

	local v

	if(value>Max)then
		v=Max
	
	elseif(value<Min)then
		v=Min
	else
		v=value
	end

	return v
end
 
p = 0
k = 1

t2=obj.time+offtime/1000
t3=obj.time+tofftime/1000
t2=cut(t2,obj.totaltime,0)
t3=cut(t3,obj.totaltime,0)

--vを求める

	vx2=p+k*obj.getvalue("layer"..layn ..".x",t2)
	vy2=p+k*obj.getvalue("layer"..layn ..".y",t2)
	vz2=p+k*obj.getvalue("layer"..layn ..".z",t2)
	vrz2=p+k*obj.getvalue("layer"..layn ..".rz",t2)

	vx3=p+k*obj.getvalue("layer"..layn ..".x",t3)
	vy3=p+k*obj.getvalue("layer"..layn ..".y",t3)
	vz3=p+k*obj.getvalue("layer"..layn ..".z",t3)
	vrz3=p+k*obj.getvalue("layer"..layn ..".rz",t3)

--上限をカット

	vx2=cut(vx2,max,min)
	vy2=cut(vy2,max,min)
	vz2=cut(vz2,max,min)

--vを反映値に適用

cam = obj.getoption("camera_param")

if(checkX==1)then
	cam.x=cam.x+vx2
end

if(checkX==1)then
	cam.tx=cam.tx+vx3
end

if(checkY==1)then
	cam.y=cam.y+vy2
end
if(checkY==1)then
	cam.ty=cam.ty+vy3
end

if(checkZ==1)then
	cam.z=cam.z+vz2
end
if(checkZ==1)then
	cam.tz=cam.tz+vz3
end
	cam.rz=cam.rz+CRZ
	cam.d=cam.d+DD

--camを反映
obj.setoption("camera_param",cam)	