コード例 #1
0
        private void addPluginSphere(string pluginName)
        {
            OgreWindow.Instance.pause();
            string meshName      = sphereNamePrefix + "_SphereMesh_" + pluginName;
            string entityName    = sphereNamePrefix + "_SphereEntity_" + pluginName;
            string materialName  = sphereNamePrefix + "_SphereMaterial_" + pluginName;
            string sceneNodeName = sphereNamePrefix + "_SphereSceneNode_" + pluginName;

            ((MaterialPtr)MaterialManager.Singleton.Create(materialName, ResourceGroupManager.DEFAULT_RESOURCE_GROUP_NAME)).GetTechnique(0).GetPass(0).CreateTextureUnitState("\\normalNoiseColor.png");
            //PrimitiveGenerators.CreateSphere(meshName, ClientClasses[pluginName].Radius(), 8, 8);
            PrimitiveGenerators.CreateSphere(meshName, 50, 8, 8);
            Entity    sphereEntity = OgreWindow.Instance.mSceneMgr.CreateEntity(entityName, meshName);
            SceneNode sphereNode   = OgreWindow.Instance.mSceneMgr.RootSceneNode.CreateChildSceneNode(sceneNodeName);

            sphereEntity.SetMaterialName(materialName);
            sphereNode.AttachObject(sphereEntity);
            sphereEntity.CastShadows = false;
            sphereNode.Position      = ClientClasses[pluginName].Location().toMogre;
            Helpers.setEntityOpacity(sphereEntity, .9f);
            //sphereNode.SetScale(new Mogre.Vector3(2f));
            OgreWindow.Instance.unpause();
        }