public override void Load(ISceneDataNode sceneDataNode) { var scale = new Vector3(1, 1, 1); var position = new Vector3(); var orientationAxis = new Vector3(0, 0, 1); var orientationAngle = 0.0f; if (sceneDataNode.HasParameter("scale")) { scale = sceneDataNode.ReadVectorParameter("scale"); } if (sceneDataNode.HasParameter("position")) { position = sceneDataNode.ReadVectorParameter("position"); } if (sceneDataNode.HasParameter("orientationAxis")) { orientationAxis = sceneDataNode.ReadVectorParameter("orientationAxis"); orientationAngle = sceneDataNode.ReadFloatParameter("angle"); } Init(scale, position, orientationAxis, orientationAngle); var name = sceneDataNode.ReadParameter("shapeName"); if (sceneDataNode.HasParameter("filePath")) { var shapeTypeString = sceneDataNode.ReadParameter("shapeType"); var shapeType = (ShapeType)Enum.Parse(typeof(ShapeType), shapeTypeString); var filePath = sceneDataNode.ReadParameter("filePath"); var fileTypeString = Path.GetExtension(filePath).TrimStart('.'); var fileType = (FileType)Enum.Parse(typeof(FileType), fileTypeString); _shape = _shapeFactory.CreateShape(shapeType, fileType, name); _shape.Load(filePath); } else { var primitveTypeString = sceneDataNode.ReadParameter("primitiveType"); var primitveType = (PrimitiveType)Enum.Parse(typeof(PrimitiveType), primitveTypeString); _shape = _shapeFactory.CreateShape(primitveType, name); } var materialKey = sceneDataNode.ReadParameter("material"); if (_resourceManager.HasMaterial(materialKey)) { _shape.Material = _resourceManager.GetMaterial(materialKey); } }
public override void Load(ISceneDataNode sceneDataNode) { base.Load(sceneDataNode); var position = sceneDataNode.ReadVectorParameter("position"); Init(position); }
public override void Load(ISceneDataNode sceneDataNode) { float nearClip = sceneDataNode.ReadFloatParameter("nearClip"); float farClip = sceneDataNode.ReadFloatParameter("farClip"); int order = 0; if (sceneDataNode.HasParameter("order")) order = int.Parse(sceneDataNode.ReadParameter("order")); var position = new Vector3(); var target = new Vector3(); var up = new Vector3(); position = sceneDataNode.ReadVectorParameter("position"); target = sceneDataNode.ReadVectorParameter("target"); up = sceneDataNode.ReadVectorParameter("up"); Init(nearClip, farClip, order, position, target, up); }
public override void Load(ISceneDataNode sceneDataNode) { base.Load(sceneDataNode); var direction = sceneDataNode.ReadVectorParameter("direction"); Init(direction.Normalized()); }
public override void Load(ISceneDataNode sceneDataNode) { var scale = new Vector3(1,1,1); var position = new Vector3(); var orientationAxis = new Vector3(0,0,1); var orientationAngle = 0.0f; if (sceneDataNode.HasParameter("scale")) { scale = sceneDataNode.ReadVectorParameter("scale"); } if (sceneDataNode.HasParameter("position")) { position = sceneDataNode.ReadVectorParameter("position"); } if (sceneDataNode.HasParameter("orientationAxis")) { orientationAxis = sceneDataNode.ReadVectorParameter("orientationAxis"); orientationAngle = sceneDataNode.ReadFloatParameter("angle"); } Init(scale, position, orientationAxis, orientationAngle); var name = sceneDataNode.ReadParameter("shapeName"); if (sceneDataNode.HasParameter("filePath")) { var shapeTypeString = sceneDataNode.ReadParameter("shapeType"); var shapeType = (ShapeType)Enum.Parse(typeof(ShapeType), shapeTypeString); var filePath = sceneDataNode.ReadParameter("filePath"); var fileTypeString = Path.GetExtension(filePath).TrimStart('.'); var fileType = (FileType) Enum.Parse(typeof (FileType), fileTypeString); _shape = _shapeFactory.CreateShape(shapeType, fileType, name); _shape.Load(filePath); } else { var primitveTypeString = sceneDataNode.ReadParameter("primitiveType"); var primitveType = (PrimitiveType)Enum.Parse(typeof(PrimitiveType), primitveTypeString); _shape = _shapeFactory.CreateShape(primitveType, name); } var materialKey = sceneDataNode.ReadParameter("material"); if (_resourceManager.HasMaterial(materialKey)) _shape.Material = _resourceManager.GetMaterial(materialKey); }
public override void Load(ISceneDataNode sceneDataNode) { float nearClip = sceneDataNode.ReadFloatParameter("nearClip"); float farClip = sceneDataNode.ReadFloatParameter("farClip"); int order = 0; if (sceneDataNode.HasParameter("order")) { order = int.Parse(sceneDataNode.ReadParameter("order")); } var position = new Vector3(); var target = new Vector3(); var up = new Vector3(); position = sceneDataNode.ReadVectorParameter("position"); target = sceneDataNode.ReadVectorParameter("target"); up = sceneDataNode.ReadVectorParameter("up"); Init(nearClip, farClip, order, position, target, up); }