@@ -36,7 +36,24 @@ public enum CameraMotion
36
36
Custom = 6
37
37
}
38
38
39
- public class CameraTrajectoryFrame : VirtualObject
39
+ public interface ICameraTrajectoryFrame : IVirtualObject
40
+ {
41
+ float Time { get ; set ; }
42
+ float RollAngle { get ; set ; }
43
+ float FovScale { get ; set ; }
44
+ CameraMotion MotionType { get ; set ; }
45
+ CameraMotion MotionTypeFov { get ; set ; }
46
+ CameraMotion MotionTypeRoll { get ; set ; }
47
+ CameraMotion MotionTypeTimeScale { get ; set ; }
48
+ float Tension { get ; set ; }
49
+ float CamBias { get ; set ; }
50
+ float Continuity { get ; set ; }
51
+ float TimeScale { get ; set ; }
52
+ bool TimeFixed { get ; set ; }
53
+ Matrix4x4 OriginalPose { get ; set ; }
54
+ }
55
+
56
+ public class CameraTrajectoryFrame : VirtualObject , ICameraTrajectoryFrame
40
57
{
41
58
public CameraTrajectoryFrame ( ) : base ( Native . ZkVirtualObject_new ( VirtualObjectType . zCCamTrj_KeyFrame ) )
42
59
{
@@ -129,7 +146,30 @@ protected override void Delete()
129
146
}
130
147
}
131
148
132
- public class CutsceneCamera : VirtualObject
149
+ public interface ICutsceneCamera : IVirtualObject
150
+ {
151
+ CameraTrajectory TrajectoryFOR { get ; set ; }
152
+ CameraTrajectory TargetTrajectoryFOR { get ; set ; }
153
+ CameraLoopType LoopMode { get ; set ; }
154
+ CameraLerpType LerpMode { get ; set ; }
155
+ bool IgnoreFORVobRotation { get ; set ; }
156
+ bool IgnoreFORVobRotationTarget { get ; set ; }
157
+ bool Adapt { get ; set ; }
158
+ bool EaseFirst { get ; set ; }
159
+ bool EaseLast { get ; set ; }
160
+ float TotalDuration { get ; set ; }
161
+ string AutoFocusVob { get ; set ; }
162
+ bool AutoPlayerMovable { get ; set ; }
163
+ bool AutoUntriggerLast { get ; set ; }
164
+ float AutoUntriggerLastDelay { get ; set ; }
165
+ int PositionCount { get ; }
166
+ int TargetCount { get ; }
167
+ int FrameCount { get ; }
168
+ List < ICameraTrajectoryFrame > Frames { get ; }
169
+ ICameraTrajectoryFrame GetFrame ( int i ) ;
170
+ }
171
+
172
+ public class CutsceneCamera : VirtualObject , ICutsceneCamera
133
173
{
134
174
public CutsceneCamera ( ) : base ( Native . ZkVirtualObject_new ( VirtualObjectType . zCCSCamera ) )
135
175
{
@@ -239,11 +279,11 @@ public float AutoUntriggerLastDelay
239
279
public int TargetCount => Native . ZkCutsceneCamera_getTargetCount ( Handle ) ;
240
280
public int FrameCount => ( int ) Native . ZkCutsceneCamera_getFrameCount ( Handle ) ;
241
281
242
- public List < CameraTrajectoryFrame > Frames
282
+ public List < ICameraTrajectoryFrame > Frames
243
283
{
244
284
get
245
285
{
246
- var frames = new List < CameraTrajectoryFrame > ( ) ;
286
+ var frames = new List < ICameraTrajectoryFrame > ( ) ;
247
287
var count = FrameCount ;
248
288
for ( var i = 0 ; i < count ; ++ i ) frames . Add ( GetFrame ( i ) ) ;
249
289
return frames ;
@@ -255,10 +295,10 @@ protected override void Delete()
255
295
Native . ZkCutsceneCamera_del ( Handle ) ;
256
296
}
257
297
258
- public CameraTrajectoryFrame GetFrame ( int i )
298
+ public ICameraTrajectoryFrame GetFrame ( int i )
259
299
{
260
300
var handle = Native . ZkCutsceneCamera_getFrame ( Handle , ( ulong ) i ) ;
261
301
return new CameraTrajectoryFrame ( Native . ZkObject_takeRef ( handle ) ) ;
262
302
}
263
303
}
264
- }
304
+ }
0 commit comments