You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+9-3Lines changed: 9 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,7 @@
1
1
# IO DIF
2
2
3
3
Blender plugin to import and export MBG Torque DIF interiors and Torque Constructor CSX files.
4
-
Supported Blender Versions: 2.8.0 to 4.3
4
+
Supported Blender Versions: 2.8.0 to 4.5
5
5
6
6
## Note
7
7
@@ -75,18 +75,24 @@ Located in the object properties panel
75
75
- Marker Path: a curve object that describes the path of the moving platform. Each point will become a Marker
76
76
- Marker Type: the smoothing to use on each marker
77
77
- Total Time: the amount of time to complete the path
78
-
- Starting Time: the time that the platform should begin
78
+
- Start Time: the time that the platform should begin
79
+
- Constant Speed: if the marker durations should instead be calculated to maintain a consistent speed
80
+
- Speed: max speed in units per second
81
+
- Start Index: Calculates Start Time based on marker index
82
+
- Pause Duration: The time that the platform should spend at zero-length segments
79
83
- Game Entity: represents an entity in the dif such as items
80
84
- Game Class: the class of the entity such as "Item", "StaticShape", etc
81
85
- Datablock: the datablock of the item.
82
86
- Properties: a list of additional key value pairs which will be set to the object on Create Subs
83
87
- Path Trigger: represents a trigger that will be added to the MustChange group
84
88
- Datablock: the trigger datablock, MBG's types are TriggerGotoTarget and TriggerGotoDelayTarget
85
89
- Pathed Interior: the target object
90
+
- Calculate Target Time: if targetTime property should be created from a target marker index
91
+
- Target Index: the marker to target
86
92
87
93
## Limitations
88
94
89
-
-No Game Entity rotation support: there isnt even a rotation field for Game Entities in difs, and torque doesnt even use the rotation field explicitly passed as a property
95
+
-Limited Game Entity rotation support: rotation field is not properly applied to Game Entities in vanilla Torque
constant_speed: BoolProperty(name="Constant Speed", description="If the marker durations should be based on speed instead of total time.", default=True)
105
+
speed: FloatProperty(name="Speed", description="The speed that the platform should be moving at. If using Accelerate smoothing, this is max speed.", default=1, min=0.01, max=100)
106
+
total_time: IntProperty(name="Total Time", description="The total time (in ms) from path start to end. Equally divided across each marker on export.", default=3000, min=1)
107
+
start_time: IntProperty(name="Start Time", description="The time in the path (in ms) that the platform should be at level restart.", default=0, min=0)
108
+
start_index: IntProperty(name="Start Index", description="The marker that the platform should be at level restart (0 is 1st marker).", default=0, min=0, soft_max=10)
109
+
pause_duration: IntProperty(name="Pause Duration", description="At a path segment of length 0, the platform will wait this long (in ms).", default=0, min=0, soft_max=10000)
110
+
reverse: BoolProperty(name="Reverse", description="If the platform should loop backwards (if not using a trigger).")
111
+
111
112
marker_type: EnumProperty(
112
113
name="Marker Type",
113
114
items=(
@@ -118,9 +119,18 @@ class InteriorSettings(bpy.types.PropertyGroup):
118
119
description="The type of smoothing that should be applied to all markers exported from the path.",
119
120
)
120
121
121
-
total_time: IntProperty(name="Total Time", description="The total time (in ms) from path start to end. Equally divided across each marker on export.", default=3000)
122
-
start_time: IntProperty(name="Starting Time", description="The time in the path (in ms) that the platform should be at level restart.", default=0)
123
-
reverse: BoolProperty(name="Reverse", description="If the platform should loop backwards (if not using a trigger).")
122
+
# Triggers
123
+
pathed_interior_target: PointerProperty(type=bpy.types.Object, name="Pathed Interior Target", description="The platform to trigger.")
124
+
target_marker: BoolProperty(name="Calculate Target Time", description="If enabled, the targetTime will be calculated to be at a specific marker.", default=True)
125
+
target_index: IntProperty(name="Target Index", description="The marker to target (0 is 1st marker).", default=0, min=0, soft_max=10)
0 commit comments