コード例 #1
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
        public Technique(XPathNodeIterator iterator, string uri)
        {
            XPathNodeIterator attributeIterator;
            attributeIterator = iterator.Current.Select("@" + XmlCollada.Technique.sid);
            if (attributeIterator.Count > 0)
            {
                attributeIterator.MoveNext();
                _sid = attributeIterator.Current.Value;
            }

            XPathNodeIterator shaderElementIterator = iterator.Current.SelectChildren(phong, uri);
            if (null == _shader)
            {
                if (shaderElementIterator.Count > 0)
                {
                    shaderElementIterator.MoveNext();
                    _shader = new Phong(shaderElementIterator, uri);
                }
            }
            if (null == _shader)
            {
                shaderElementIterator = iterator.Current.SelectChildren(lambert, uri);
                if (shaderElementIterator.Count > 0)
                {
                    shaderElementIterator.MoveNext();
                    _shader = new Lambert(shaderElementIterator, uri);
                }
            }
            if (null == _shader)
            {
                shaderElementIterator = iterator.Current.SelectChildren(blinn, uri);
                if (shaderElementIterator.Count > 0)
                {
                    shaderElementIterator.MoveNext();
                    _shader = new Blinn(shaderElementIterator, uri);
                }
            }
        }
コード例 #2
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Technique(string sid, XmlShaderElement shader)
 {
     _sid = sid;
     _shader = shader;
 }