예제 #1
0
        private void CreateSkeletonNode(Assimp.Scene aiScene, AssimpSceneContainer container)
        {
            var rootElement = this.scene.RootNode;
            var model       = new SkeletonModel(aiScene, container.GetAllBoneInfos());
            var node        = SkeletonNode.Create(model);

            this.skeletonNode = node;
            rootElement.Children.Add(node);
        }
예제 #2
0
        public static SkeletonNode Create(SkeletonModel model)
        {
            var vs    = new VertexShader(vertexCode);
            var fs    = new FragmentShader(fragmentCode);
            var array = new ShaderArray(vs, fs);
            var map   = new AttributeMap();

            map.Add("inPosition", SkeletonModel.strPosition);
            map.Add("inColor", SkeletonModel.strColor);
            map.Add("inBoneIndex", SkeletonModel.strBoneIndex);
            var builder = new RenderMethodBuilder(array, map, new LineWidthSwitch(6));
            var node    = new SkeletonNode(model, builder);

            node.Initialize();

            return(node);
        }
예제 #3
0
 private SkeletonNode(SkeletonModel model, params RenderMethodBuilder[] builders) : base(model, builders)
 {
     this.model = model;
 }