private void Start() { var desert = Resources.Load <Material>("Materials/Skyboxes/Desert"); var ash = Resources.Load <Material>("Materials/Skyboxes/Ash"); _pair = new MaterialPair(desert, ash, 24); }
public void Set(Material mat, bool record = true) { for (int i = 0; i < innerPairs.Count; i++) { Material[] ms = new Material[innerPairs[i].origMats.Length]; if (record) { innerPairs[i] = new MaterialPair(innerPairs[i].renderer, innerPairs[i].renderer.sharedMaterials); } for (int j = ms.Length - 1; j >= 0; j--) { ms[j] = mat; } innerPairs[i].renderer.sharedMaterials = ms; } if (extraPairs != null) { for (int i = 0; i < extraPairs.Count; i++) { Material[] ms = new Material[extraPairs[i].origMats.Length]; if (record) { extraPairs[i] = new MaterialPair(extraPairs[i].renderer, extraPairs[i].renderer.sharedMaterials); } for (int j = ms.Length - 1; j >= 0; j--) { ms[j] = mat; } extraPairs[i].renderer.sharedMaterials = ms; } } }
public void Initialise() { LevelMaterialID = new MaterialID(Engine.Singleton.NewtonWorld); CharacterMaterialID = new MaterialID(Engine.Singleton.NewtonWorld); TriggerVolumeMaterialID = new MaterialID(Engine.Singleton.NewtonWorld); DescribedMaterialID = new MaterialID(Engine.Singleton.NewtonWorld); CharacterSensorMaterialID = new MaterialID(Engine.Singleton.NewtonWorld); EnemyMaterialID = new MaterialID(Engine.Singleton.NewtonWorld); NoColID = new MaterialID(Engine.Singleton.NewtonWorld); // NoColLevelPair = new MaterialPair( Engine.Singleton.NewtonWorld, LevelMaterialID, NoColID); NoColLevelPair.SetContactCallback(new IgnoreCollisionCallback()); NoColDMPair = new MaterialPair( Engine.Singleton.NewtonWorld, DescribedMaterialID, NoColID); NoColDMPair.SetContactCallback(new IgnoreCollisionCallback()); NoColCharPair = new MaterialPair( Engine.Singleton.NewtonWorld, CharacterMaterialID, NoColID); NoColCharPair.SetContactCallback(new IgnoreCollisionCallback()); // SensorLevelPair = new MaterialPair( Engine.Singleton.NewtonWorld, LevelMaterialID, CharacterSensorMaterialID); SensorLevelPair.SetContactCallback(new IgnoreCollisionCallback()); SensorTriggerVolumePair = new MaterialPair( Engine.Singleton.NewtonWorld, TriggerVolumeMaterialID, CharacterSensorMaterialID); SensorTriggerVolumePair.SetContactCallback(new IgnoreCollisionCallback()); DescribedTriggerVolumePair = new MaterialPair( Engine.Singleton.NewtonWorld, DescribedMaterialID, TriggerVolumeMaterialID); DescribedTriggerVolumePair.SetContactCallback(new IgnoreCollisionCallback()); EnemyTriggerVolumePair = new MaterialPair( Engine.Singleton.NewtonWorld, EnemyMaterialID, TriggerVolumeMaterialID); EnemyTriggerVolumePair.SetContactCallback(new IgnoreCollisionCallback()); }
private void Start() { if (skyboxCycle.Length == 0) { enabled = false; return; } _pairs = new MaterialPair[skyboxCycle.Length]; for (var i = 0; i < skyboxCycle.Length; i++) { _pairs[i] = new MaterialPair( skyboxCycle[i], skyboxCycle[(i + 1) % skyboxCycle.Length], Debug.isDebugBuild ? devBlendSteps : 25 ); } }
void Awake() { _objectMaterials = new Dictionary <Color, MaterialPair>(); _colorMap = Resources.Load <ColorMap>("Materials/ColorMap"); var diffuseTemplate = Resources.Load <Material>("Materials/Template_Diffuse"); var highlightTemplate = Resources.Load <Material>("Materials/Template_Highlight"); ShapeDefaultColor = _colorMap.availableColors[_colorMap.shapeDefaultIndex]; LightDefaultColor = _colorMap.availableColors[_colorMap.lightDefaultIndex]; foreach (Color color in _colorMap.availableColors) { var diffuse = new Material(diffuseTemplate); var highlight = new Material(highlightTemplate); var matPair = new MaterialPair(diffuse, highlight); matPair.diffuse.color = color; matPair.highlight.color = color; _objectMaterials[color] = matPair; } }
public void Initialise() { LevelMaterialID = new MaterialID(Engine.Singleton.NewtonWorld); CharacterMaterialID = new MaterialID(Engine.Singleton.NewtonWorld); TriggerVolumeMaterialID = new MaterialID(Engine.Singleton.NewtonWorld); DescribedMaterialID = new MaterialID(Engine.Singleton.NewtonWorld); CharacterSensorMaterialID = new MaterialID(Engine.Singleton.NewtonWorld); EnemyMaterialID = new MaterialID(Engine.Singleton.NewtonWorld); WaypointMaterialID = new MaterialID(Engine.Singleton.NewtonWorld); TriggerVolumeCharacterPair = new MaterialPair( Engine.Singleton.NewtonWorld, CharacterMaterialID, TriggerVolumeMaterialID); TriggerVolumeCharacterPair.SetContactCallback(new TriggerVolumeGameObjectCallback()); CharacterSensorPair = new MaterialPair( Engine.Singleton.NewtonWorld, CharacterMaterialID, CharacterSensorMaterialID); CharacterSensorPair.SetContactCallback(new SensorGameObjectCallback()); SensorLevelPair = new MaterialPair( Engine.Singleton.NewtonWorld, LevelMaterialID, CharacterSensorMaterialID); //SensorLevelPair.SetContactCallback(new IgnoreCollisionCallback()); SensorLevelPair.SetContactCallback(new SensorGameObjectCallback()); SensorTriggerVolumePair = new MaterialPair( Engine.Singleton.NewtonWorld, TriggerVolumeMaterialID, CharacterSensorMaterialID); SensorTriggerVolumePair.SetContactCallback(new IgnoreCollisionCallback()); SensorDescribedObjectPair = new MaterialPair( Engine.Singleton.NewtonWorld, DescribedMaterialID, CharacterSensorMaterialID); SensorDescribedObjectPair.SetContactCallback(new SensorGameObjectCallback()); DescribedTriggerVolumePair = new MaterialPair( Engine.Singleton.NewtonWorld, DescribedMaterialID, TriggerVolumeMaterialID); DescribedTriggerVolumePair.SetContactCallback(new IgnoreCollisionCallback()); EnemyTriggerVolumePair = new MaterialPair( Engine.Singleton.NewtonWorld, EnemyMaterialID, TriggerVolumeMaterialID); EnemyTriggerVolumePair.SetContactCallback(new IgnoreCollisionCallback()); EnemySensorPair = new MaterialPair( Engine.Singleton.NewtonWorld, EnemyMaterialID, CharacterSensorMaterialID); EnemySensorPair.SetContactCallback(new SensorGameObjectCallback()); WaypointCharacterPair = new MaterialPair( Engine.Singleton.NewtonWorld, WaypointMaterialID, CharacterMaterialID); WaypointCharacterPair.SetContactCallback(new IgnoreCollisionCallback()); WaypointTriggerPair = new MaterialPair( Engine.Singleton.NewtonWorld, WaypointMaterialID, TriggerVolumeMaterialID); WaypointTriggerPair.SetContactCallback(new IgnoreCollisionCallback()); WaypointEnemyPair = new MaterialPair( Engine.Singleton.NewtonWorld, WaypointMaterialID, EnemyMaterialID); WaypointEnemyPair.SetContactCallback(new IgnoreCollisionCallback()); WaypointDescribedPair = new MaterialPair( Engine.Singleton.NewtonWorld, WaypointMaterialID, DescribedMaterialID); WaypointDescribedPair.SetContactCallback(new IgnoreCollisionCallback()); WaypointSensorPair = new MaterialPair( Engine.Singleton.NewtonWorld, WaypointMaterialID, CharacterSensorMaterialID); WaypointSensorPair.SetContactCallback(new IgnoreCollisionCallback()); }