Skip to content

Commit 83ada7c

Browse files
authored
Merge pull request #432 from Hoikas/fix_423
Add mitigations for #423.
2 parents 8b67d62 + 9b7fbb7 commit 83ada7c

File tree

2 files changed

+6
-0
lines changed

2 files changed

+6
-0
lines changed

korman/exporter/camera.py

+4
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,10 @@ def _export_camera_modifier(self, so, bo, props, trans):
9797
continue
9898
cam_trans = plCameraModifier.CamTrans()
9999
if manual_trans.camera:
100+
# Don't even bother if a disabled camera is referenced. If we export camera modifier
101+
# for a disabled camera, then it won't get a brain, and the client will crash.
102+
if not manual_trans.camera.plasma_object.enabled:
103+
continue
100104
cam_trans.transTo = self._mgr.find_create_key(plCameraModifier, bl=manual_trans.camera)
101105
cam_trans.ignore = manual_trans.mode == "ignore"
102106

korman/exporter/material.py

+2
Original file line numberDiff line numberDiff line change
@@ -770,6 +770,8 @@ def export_dynamic_env(self, bo, layer, texture, pl_class):
770770
# least a SceneObject and CoordInterface so that we can touch it...
771771
# NOTE: that harvest_actor makes sure everyone alread knows we're going to have a CI
772772
if isinstance(viewpt.data, bpy.types.Camera):
773+
if not viewpt.plasma_object.enabled:
774+
raise ExportError(f"DynamicCamMap '{texture.name} wants to use the camera '{viewpt.name}', but it is not a Plasma Object!")
773775
pl_env.camera = self._mgr.find_create_key(plCameraModifier, bl=viewpt)
774776
else:
775777
pl_env.rootNode = self._mgr.find_create_key(plSceneObject, bl=viewpt)

0 commit comments

Comments
 (0)