Exemple #1
0
        protected override YAMLMappingNode ExportYAMLRoot(IExportContainer container)
        {
            YAMLMappingNode node = base.ExportYAMLRoot(container);

            node.AddSerializedVersion(GetSerializedVersion(container.ExportVersion));
            node.Add(TypeName, (int)Type);
            node.Add(ColorName, Color.ExportYAML(container));
            node.Add(IntensityName, Intensity);
            node.Add(RangeName, Range);
            node.Add(SpotAngleName, SpotAngle);
            node.Add(CookieSizeName, CookieSize);
            node.Add(ShadowsName, Shadows.ExportYAML(container));
            node.Add(CookieName, Cookie.ExportYAML(container));
            node.Add(DrawHaloName, DrawHalo);
            node.Add(FlareName, Flare.ExportYAML(container));
            node.Add(RenderModeName, (int)RenderMode);
            node.Add(CullingMaskName, CullingMask.ExportYAML(container));
            node.Add(LightmappingName, (int)Lightmapping);
            node.Add(AreaSizeName, AreaSize.ExportYAML(container));
            node.Add(BounceIntensityName, BounceIntensity);
            node.Add(ColorTemperatureName, ColorTemperature);
            node.Add(UseColorTemperatureName, UseColorTemperature);
            node.Add(ShadowRadiusName, 0);
            node.Add(ShadowAngleName, 0);
            return(node);
        }
Exemple #2
0
        private void SetupRendering()
        {
            var shadowRender = Shadows.Renderer(_sceneGraph, 2500, ShadowMapType.Depth, true)
                               .MapInput((double _) => _camera);

            var skyboxRender  = Skybox.Renderer(_sceneGraph, _skyColor);
            var terrainRender = Terrain.Renderer(_sceneGraph, _skyColor, Shadows.Instance.csmUniforms);
            var entityRender  = Entities.Renderer(_sceneGraph, Shadows.Instance.csmUniforms);
            var panelRender   = Panels.Renderer(_sceneGraph)
                                .And(React.By((Vec2i vp) => ControlPanel <TexturedVertex> .UpdateAll(_sceneGraph, this, vp)))
                                .MapInput((double _) => new Vec2i(ClientSize.Width, ClientSize.Height));

            var moveFighter = React.By <float> (UpdateFighterAndCamera)
                              .Aggregate((float s, double t) => s + (float)t * 25f, 0f);

            React.By <double> (UpdateFPS)
            .And(shadowRender
                 .And(skyboxRender
                      .And(terrainRender)
                      .And(entityRender)
                      .MapInput((double _) => _camera)
                      .And(panelRender)
                      .Viewport(this)))
            .And(moveFighter)
            .SwapBuffers(this)
            .WhenRendered(this).Evoke();

            Entities.UpdatePerspectiveMatrix()
            .And(Skybox.UpdatePerspectiveMatrix())
            .And(Terrain.UpdatePerspectiveMatrix())
            .MapInput((Vec2 size) =>
                      (_camera.Frustum = new ViewingFrustum(FrustumKind.Perspective, size.X, size.Y, -1f, -400f))
                      .CameraToScreen)
            .WhenResized(this).Evoke();
        }
Exemple #3
0
            internal override Event ReadEntry(BinaryReaderEx br)
            {
                EventType type = br.GetEnum8 <EventType>(br.Position + br.VarintSize + 4);

                switch (type)
                {
                case EventType.Light:
                    return(Lights.EchoAdd(new Event.Light(br)));

                case EventType.Shadow:
                    return(Shadows.EchoAdd(new Event.Shadow(br)));

                case EventType.Fog:
                    return(Fogs.EchoAdd(new Event.Fog(br)));

                case EventType.BGColor:
                    return(BGColors.EchoAdd(new Event.BGColor(br)));

                case EventType.MapOffset:
                    return(MapOffsets.EchoAdd(new Event.MapOffset(br)));

                case EventType.Warp:
                    return(Warps.EchoAdd(new Event.Warp(br)));

                case EventType.CheapMode:
                    return(CheapModes.EchoAdd(new Event.CheapMode(br)));

                default:
                    throw new NotImplementedException($"Unimplemented event type: {type}");
                }
            }
Exemple #4
0
        protected override YAMLMappingNode ExportYAMLRoot(IExportContainer container)
        {
#warning TODO: serialized version acording to read version (current 2017.3.0f3)
            YAMLMappingNode node = base.ExportYAMLRoot(container);
            node.AddSerializedVersion(GetSerializedVersion(container.Version));
            node.Add("m_Type", (int)Type);
            node.Add("m_Color", Color.ExportYAML(container));
            node.Add("m_Intensity", Intensity);
            node.Add("m_Range", Range);
            node.Add("m_SpotAngle", SpotAngle);
            node.Add("m_CookieSize", CookieSize);
            node.Add("m_Shadows", Shadows.ExportYAML(container));
            node.Add("m_Cookie", Cookie.ExportYAML(container));
            node.Add("m_DrawHalo", DrawHalo);
            node.Add("m_Flare", Flare.ExportYAML(container));
            node.Add("m_RenderMode", (int)RenderMode);
            node.Add("m_CullingMask", CullingMask.ExportYAML(container));
            node.Add("m_Lightmapping", (int)Lightmapping);
            node.Add("m_AreaSize", AreaSize.ExportYAML(container));
            node.Add("m_BounceIntensity", BounceIntensity);
            node.Add("m_ColorTemperature", ColorTemperature);
            node.Add("m_UseColorTemperature", UseColorTemperature);
#warning ???
            node.Add("m_ShadowRadius", 0);
            node.Add("m_ShadowAngle", 0);
            return(node);
        }
Exemple #5
0
 private static void LoadDefaults()
 {
     resolution = Screen.currentResolution;
     fullscreen = Screen.fullScreen;
     antialiasing = Antialiasing.Ultra;
     shadows = Shadows.High;
     bloom = Bloom.High;
     motionBlur = MotionBlur.High;
 }
Exemple #6
0
        protected void DestroyShadow(int shadow)
        {
            FAShadow sh = GetShadow(shadow);

            if (sh != null)
            {
                sh.Dispose();
                Shadows.Remove(sh);
            }
        }
Exemple #7
0
        void Update()
        {
            if (!isAI())
            {
                Inputs.HandleInputs();
            }

            Shadows.HandleShadows();
            HandleAnimations();
        }
        public void Begin(Camera camera)
        {
            var transform = camera.GetTransform();

            Tiles.Begin(SpriteSortMode.Deferred, samplerState: SamplerState.PointClamp, transformMatrix: transform);
            Entities.Begin(SpriteSortMode.Deferred, samplerState: SamplerState.PointClamp, transformMatrix: transform);
            Overlay.Begin(SpriteSortMode.Deferred, samplerState: SamplerState.PointClamp, transformMatrix: transform);
            Lights.Begin(SpriteSortMode.Deferred, BlendState.Additive, SamplerState.LinearClamp,
                         transformMatrix: transform);
            Shadows.Begin(SpriteSortMode.Deferred, samplerState: SamplerState.PointClamp, transformMatrix: transform);
        }
        public void SetDirection(Vector2 direction)
        {
            if (Direction == direction)
            {
                return;
            }

            Direction = direction;

            if (Direction == Vector2.zero)
            {
                Parts.ForEach(i => i.SetActive(true));
                Shadows.ForEach(i => i.SetActive(true));

                Parts[0].transform.localPosition = Shadows[0].transform.localPosition = new Vector3(0, -1.25f);
                Parts[1].transform.localPosition = Shadows[1].transform.localPosition = new Vector3(0, 1.25f);
                Parts[2].transform.localPosition = Shadows[2].transform.localPosition = new Vector3(-1.5f, 0);
                Parts[3].transform.localPosition = Shadows[3].transform.localPosition = new Vector3(1.5f, 0);

                return;
            }

            Parts.ForEach(i => i.transform.localPosition   = Vector3.zero);
            Shadows.ForEach(i => i.transform.localPosition = Vector3.zero);

            int index;

            if (direction == Vector2.left)
            {
                index = 2;
            }
            else if (direction == Vector2.right)
            {
                index = 3;
            }
            else if (direction == Vector2.up)
            {
                index = 1;
            }
            else if (direction == Vector2.down)
            {
                index = 0;
            }
            else
            {
                throw new NotSupportedException();
            }

            for (var i = 0; i < Parts.Count; i++)
            {
                Parts[i].SetActive(i == index);
                Shadows[i].SetActive(i == index);
            }
        }
Exemple #10
0
 string ToKeyword(Shadows en)
 {
     if (en == Shadows.HARD)
     {
         return("HARD_SHADOWS");
     }
     if (en == Shadows.VARIANCE)
     {
         return("VARIANCE_SHADOWS");
     }
     return("");
 }
Exemple #11
0
        public static void Draw(Pass pass)
        {
            if (pass.drawShadows)
            {
                Shadows.Draw(pass);
            }

            if (pass.drawMask)
            {
                Masks.Draw(pass);
            }
        }
Exemple #12
0
        public override void Update()
        {
            var delta = Engine.Get().Delta;

            _factorDay = _driverDay.Update(delta);

            _skyboxRotation = new Vector3(360.0f * _factorDay, 0.0f, 0.0f);

            var lightDirection = _skyboxRotation.Rotate(new Vector3(0.2f, 0.0f, 0.5f));

            lightDirection.Normalize();

            var fogColour = FogColourSunrise.Interpolate(FogColourNight, SunriseFactor);

            fogColour = fogColour.Interpolate(FogColourDay, ShadowFactor);

            _sunPosition  = lightDirection * new Vector3(-6048.0f, -6048.0f, -6048.0f);
            _moonPosition = lightDirection * new Vector3(6048.0f, 6048.0f, 6048.0f);

            /*if (Scenes.Get().GetCamera() != null)
             * {
             *  _sunPosition += Scenes.Get().Camera.Position;
             *  _moonPosition += Scenes.Get().Camera.Position;
             * }*/

            _sunColour = SunColourSunrise.Interpolate(SunColourNight, SunriseFactor);
            _sunColour = _sunColour.Interpolate(SunColourDay, ShadowFactor);

            _moonColour = MoonColourNight.Interpolate(MoonColourDay, ShadowFactor);

            _fog.Colour     = fogColour;
            _fog.Density    = 0.002f + ((1.0f - ShadowFactor * 0.002f));
            _fog.Gradient   = 2.0f - ((1.0f - ShadowFactor) * 0.380f);
            _fog.LowerLimit = 0.0f;
            _fog.UpperLimit = 0.15f - ((1.0f - ShadowFactor) * 0.03f);

            _skyColour = SkyboxColourDay;

            if (Shadows.Get() != null)
            {
                Shadows.Get().LightDirection    = lightDirection;
                Shadows.Get().ShadowBoxOffset   = (4.0f * (1.0f - ShadowFactor)) + 10.0f;
                Shadows.Get().ShadowBoxDistance = 40.0f;
                Shadows.Get().ShadowTransition  = 5.0f;
                Shadows.Get().ShadowDarkness    = 0.6f * ShadowFactor;
            }

            _factorSunrise = Math.Clamp(-((float)Math.Sin(2.0f * Math.PI * DayFactor) - 1.0f) / 2.0f, 0.0f, 1.0f);
            _factorShadow  = Math.Clamp(1.7f * (float)Math.Sin(2.0f * Math.PI * DayFactor), 0.0f, 1.0f);;
            _sunHeight     = _sunPosition.Y;
            _starIntensity = Math.Clamp(1.0f - ShadowFactor, 0.0f, 1.0f);
        }
        public LightingForward()
        {
            buffer = new CommandBuffer()
            {
                name = "Lighting"
            };
            additionalLightsPositions       = new Vector4[Definitions.MaxAdditionalLightsCount];
            additionalLightsColors          = new Vector4[Definitions.MaxAdditionalLightsCount];
            additionalLightsSpotAngles      = new Vector4[Definitions.MaxAdditionalLightsCount];
            additionalLightsSpotDirs        = new Vector4[Definitions.MaxAdditionalLightsCount];
            additionalLightsOcclusionProbes = new Vector4[Definitions.MaxAdditionalLightsCount];

            shadow = new Shadows();
        }
        protected override YAMLMappingNode ExportYAMLRoot(IExportContainer container)
        {
            YAMLMappingNode node = base.ExportYAMLRoot(container);

            node.AddSerializedVersion(ToSerializedVersion(container.ExportVersion));
            node.Add(TypeName, (int)Type);
            if (HasShape(container.ExportVersion))
            {
                node.Add(ShapeName, (int)Shape);
            }
            node.Add(ColorName, Color.ExportYAML(container));
            node.Add(IntensityName, Intensity);
            node.Add(RangeName, Range);
            node.Add(SpotAngleName, SpotAngle);
            if (HasInnerSpotAngle(container.ExportVersion))
            {
                node.Add(InnerSpotAngleName, InnerSpotAngle);
            }
            node.Add(CookieSizeName, CookieSize);
            node.Add(ShadowsName, Shadows.ExportYAML(container));
            node.Add(CookieName, Cookie.ExportYAML(container));
            node.Add(DrawHaloName, DrawHalo);
            if (HasBakingOutput(container.ExportVersion, container.ExportFlags))
            {
                node.Add(BakingOutputName, BakingOutput.ExportYAML(container));
            }
            node.Add(FlareName, Flare.ExportYAML(container));
            node.Add(RenderModeName, (int)RenderMode);
            node.Add(CullingMaskName, CullingMask.ExportYAML(container));
            if (HasRenderingLayerMask(container.ExportVersion))
            {
                node.Add(RenderingLayerMaskName, RenderingLayerMask);
            }
            node.Add(LightmappingName, (int)Lightmapping);
            node.Add(AreaSizeName, AreaSize.ExportYAML(container));
            node.Add(BounceIntensityName, BounceIntensity);
            node.Add(ColorTemperatureName, ColorTemperature);
            node.Add(UseColorTemperatureName, UseColorTemperature);
            if (HasBoundingSphereOverride(container.ExportVersion))
            {
                node.Add(BoundingSphereOverrideName, BoundingSphereOverride.ExportYAML(container));
                node.Add(UseBoundingSphereOverrideName, UseBoundingSphereOverride);
            }
            node.Add(ShadowRadiusName, GetShadowRadius(container.Version, container.Flags));
            node.Add(ShadowAngleName, GetShadowAngle(container.Version, container.Flags));
            return(node);
        }
Exemple #15
0
        public Shadows ConvertShadowToDTO(BllShadows bllShadows)
        {
            Shadows dTOShadows = new Shadows()
            {
                Id                    = bllShadows.Id,
                Name                  = bllShadows.Name,
                Brand                 = bllShadows.Brand,
                Price                 = bllShadows.Price,
                Volume                = bllShadows.Volume,
                QuantityBottles       = bllShadows.QuantityBottles,
                QuantityGeneralVolume = bllShadows.QuantityGeneralVolume,
                Color                 = bllShadows.Color,
                QuntityCount          = bllShadows.QuntityCount
            };

            return(dTOShadows);
        }
Exemple #16
0
        public BllShadows ConvertShadowToBll(Shadows dTOShadows)
        {
            BllShadows bllShadows = new BllShadows()
            {
                Id                    = dTOShadows.Id,
                Name                  = dTOShadows.Name,
                Brand                 = dTOShadows.Brand,
                Price                 = dTOShadows.Price,
                Volume                = dTOShadows.Volume,
                QuantityBottles       = dTOShadows.QuantityBottles,
                QuantityGeneralVolume = dTOShadows.QuantityGeneralVolume,
                Color                 = dTOShadows.Color,
                QuntityCount          = dTOShadows.QuntityCount
            };

            return(bllShadows);
        }
            internal override Event ReadEntry(BinaryReaderEx br)
            {
                EventType type = br.GetEnum16 <EventType>(br.Position + 0xC);

                switch (type)
                {
                case EventType.Light:
                    var light = new Event.Light(br);
                    Lights.Add(light);
                    return(light);

                case EventType.Shadow:
                    var shadow = new Event.Shadow(br);
                    Shadows.Add(shadow);
                    return(shadow);

                case EventType.Fog:
                    var fog = new Event.Fog(br);
                    Fogs.Add(fog);
                    return(fog);

                case EventType.BGColor:
                    var bgColor = new Event.BGColor(br);
                    BGColors.Add(bgColor);
                    return(bgColor);

                case EventType.MapOffset:
                    var mapOffset = new Event.MapOffset(br);
                    MapOffsets.Add(mapOffset);
                    return(mapOffset);

                case EventType.Warp:
                    var warp = new Event.Warp(br);
                    Warps.Add(warp);
                    return(warp);

                case EventType.CheapMode:
                    var cheapMode = new Event.CheapMode(br);
                    CheapModes.Add(cheapMode);
                    return(cheapMode);

                default:
                    throw new NotImplementedException($"Unimplemented event type: {type}");
                }
            }
Exemple #18
0
        public void ComputeShadowMesh(Vector3 lightWorldPosition)
        {
            List <VertexBuffer> vertexBuffers;
            List <IndexBuffer>  indexBuffers;

            _gameWorld.GetRenderables(out vertexBuffers, out indexBuffers);

            for (int i = 0; i < vertexBuffers.Count; ++i)
            {
                _shadowMeshIndices.Clear();
                _shadowVertices.Clear();
                _shadowIndices.Clear();

                VertexPositionNormalTexture[] vertexData = new VertexPositionNormalTexture[vertexBuffers[i].VertexCount];
                vertexBuffers[i].GetData <VertexPositionNormalTexture>(vertexData);

                UInt32[] vertexIndices = new UInt32[indexBuffers[i].IndexCount];
                indexBuffers[i].GetData <UInt32>(vertexIndices);

                foreach (VertexPositionNormalTexture vertex in vertexData)
                {
                    _shadowVertices.Add(vertex.Position);
                }

                foreach (UInt32 index in vertexIndices)
                {
                    _shadowIndices.Add(index);
                }

                Shadows.CreateShadowVolumeMesh(vertexData.ToList(), _shadowIndices, Vector3.Zero - lightWorldPosition, ref _shadowMeshIndices, ref _shadowMeshVertices);
                IndexBuffer shadowIndexBuffer = new IndexBuffer(GraphicsDevice, IndexElementSize.ThirtyTwoBits, _shadowMeshIndices.Count, BufferUsage.None);
                shadowIndexBuffer.SetData(_shadowMeshIndices.ToArray());
                _shadowIndexList.Add(shadowIndexBuffer);

                List <VertexPositionColor> shadowVertices = new List <VertexPositionColor>();
                foreach (Vector3 vertexPos in _shadowMeshVertices)
                {
                    shadowVertices.Add(new VertexPositionColor(vertexPos, Color.White));
                }

                VertexBuffer shadowVertexBuffer = new VertexBuffer(GraphicsDevice, typeof(VertexPositionColor), shadowVertices.Count, BufferUsage.None);
                shadowVertexBuffer.SetData(shadowVertices.ToArray());
                _shadowVertexBufferList.Add(shadowVertexBuffer);
            }
        }
Exemple #19
0
        public static void Unload()
        {
            Subtitle.Dispose();
            Title.Dispose();
            Splash.Dispose();
            MapSheet.Dispose();
            MiniHP.Dispose();
            HPMenu.Dispose();
            Buttons.Dispose();
            Shadows.Dispose();
            Darkness.Dispose();
            BattleFactors.Dispose();
            Strip.Dispose();
            Cursor.Dispose();
            Arrows.Dispose();
            PicBorder.Dispose();
            MenuBorder.Dispose();
            MenuBG.Dispose();

            tileCache.Clear();
            objectCache.Clear();
            bgCache.Clear();
            itemCache.Clear();
            iconCache.Clear();
            vfxCache.Clear();
            portraitCache.Clear();
            spriteCache.Clear();

            DivTex.Dispose();

            EXPFont.Dispose();
            HealFont.Dispose();
            DamageFont.Dispose();
            DungeonFont.Dispose();
            TextFont.Dispose();

            SysFont.Dispose();

            Pixel.Dispose();
            defaultTex.Dispose();

            Loaded = false;
            //Notify script engine
            LuaEngine.Instance.OnGraphicsUnload();
        }
Exemple #20
0
        public override void Unpack(BinaryReader reader)
        {
            Id = reader.ReadUInt32();

            Bitfield = reader.ReadUInt32();

            reader.BaseStream.Position += 4; // Skip ahead 4 bytes, because this is the CellId. Again. Twice.

            byte   numSurfaces = reader.ReadByte();
            byte   numPortals  = reader.ReadByte();     // Note that "portal" in this context does not refer to the swirly pink/purple thing, its basically connecting cells
            ushort numStabs    = reader.ReadUInt16();   // I believe this is what cells can be seen from this one. So the engine knows what else it needs to load/draw.

            // Read what surfaces are used in this cell
            for (uint i = 0; i < numSurfaces; i++)
            {
                Shadows.Add(0x08000000u | reader.ReadUInt16()); // these are stored in the dat as short values, so we'll make them a full dword
            }
            EnvironmentId = (0x0D000000u | reader.ReadUInt16());

            CellStructure = reader.ReadUInt16();

            Position.Unpack(reader);

            CellPortals.Unpack(reader, numPortals);

            for (uint i = 0; i < numStabs; i++)
            {
                VisibleCells.Add(reader.ReadUInt16());
            }

            if ((Bitfield & 2) != 0)
            {
                StaticObjects.Unpack(reader);
            }

            if ((Bitfield & 8) != 0)
            {
                RestrictionObj = reader.ReadUInt32();
            }
        }
Exemple #21
0
 void Start()
 {
     audioSource = GameObject.FindGameObjectWithTag("S_SoundFX").GetComponent <AudioSource>();
     //myLight = GameObject.FindGameObjectWithTag("Flashlight").GetComponent<Light>();
     //mySpotLight = GameObject.FindGameObjectWithTag("Spotlight").GetComponent<Light>();
     currentRenderer = this.GetComponent <MeshRenderer>();
     //print(currentRenderer);
     myShadowM = this.GetComponent <Shadow_Movement>();
     MyBox     = this.GetComponent <BoxCollider>();
     myShadow  = this.GetComponent <Shadows>();
     myRigid   = this.GetComponent <Rigidbody>();
     myMeshC   = this.GetComponent <MeshCollider>();
     myAudio   = this.GetComponent <AudioSource>();
     if (DeletedShadows.Contains(gameObject.name))
     {
         myMeshC.enabled = false;
         //Change Texture
         currentRenderer.material.mainTexture = normalTexture;
         //Turn off trigger of Box Collider
         MyBox.isTrigger = false;
         //Activate MeshCollider
         //myMeshC.enabled = true;
         //Turn off Shadow Movement
         Destroy(myShadowM);
         //Turn off the Rigid Body
         Destroy(myRigid);
         //move positon
         Xpos = myDictionary[gameObject.name][0];
         Ypos = myDictionary[gameObject.name][1];
         Zpos = myDictionary[gameObject.name][2];
         transform.position = new Vector3(Xpos, Ypos, Zpos);
         //Turn off shadow audio
         myAudio.mute    = true;
         myAudio.enabled = false;
         //Change Tag
         transform.tag = "Untagged";
         // Turn off Shadow Script
         Destroy(myShadow);
     }
 }
            public void Add(IMsbEvent item)
            {
                switch (item)
                {
                case Event.Light e:
                    Lights.Add(e);
                    break;

                case Event.Shadow e:
                    Shadows.Add(e);
                    break;

                case Event.Fog e:
                    Fogs.Add(e);
                    break;

                case Event.BGColor e:
                    BGColors.Add(e);
                    break;

                case Event.MapOffset e:
                    MapOffsets.Add(e);
                    break;

                case Event.Warp e:
                    Warps.Add(e);
                    break;

                case Event.CheapMode e:
                    CheapModes.Add(e);
                    break;

                default:
                    throw new ArgumentException(
                              message: "Item is not recognized",
                              paramName: nameof(item));
                }
            }
Exemple #23
0
            /// <summary>
            /// Adds an event to the appropriate list for its type; returns the event.
            /// </summary>
            public Event Add(Event evnt)
            {
                switch (evnt)
                {
                case Event.Light e: Lights.Add(e); break;

                case Event.Shadow e: Shadows.Add(e); break;

                case Event.Fog e: Fogs.Add(e); break;

                case Event.BGColor e: BGColors.Add(e); break;

                case Event.MapOffset e: MapOffsets.Add(e); break;

                case Event.Warp e: Warps.Add(e); break;

                case Event.CheapMode e: CheapModes.Add(e); break;

                default:
                    throw new ArgumentException($"Unrecognized type {evnt.GetType()}.", nameof(evnt));
                }
                return(evnt);
            }
Exemple #24
0
 /// <summary>
 /// Teammember
 /// </summary>
 /// <param name="teammemberId"></param>
 /// <param name="playerId"></param>
 /// <param name="operationType"></param>
 public void AddShadow(Guid teammemberId, int playerId, EnumOperationType operationType)
 {
     Shadows.Add(new TeammemberShadow(teammemberId, playerId, operationType, TransactionId));
 }
Exemple #25
0
        public override void Read(AssetReader reader)
        {
            base.Read(reader);

            Type = (LightType)reader.ReadInt32();
            Color.Read(reader);
            if (IsReadAttenuate(reader.Version))
            {
                Attenuate = reader.ReadBoolean();
                if (IsAlign(reader.Version))
                {
                    reader.AlignStream(AlignType.Align4);
                }
            }
            if (IsReadIntensity(reader.Version))
            {
                Intensity = reader.ReadSingle();
            }
            Range     = reader.ReadSingle();
            SpotAngle = reader.ReadSingle();
            if (IsReadCookieSize(reader.Version))
            {
                CookieSize = reader.ReadSingle();
            }
            if (IsReadShadows(reader.Version))
            {
                Shadows.Read(reader);
            }
            Cookie.Read(reader);
            DrawHalo = reader.ReadBoolean();
            if (IsReadActuallyLightmapped(reader.Version))
            {
                ActuallyLightmapped = reader.ReadBoolean();
            }
            if (IsAlign(reader.Version))
            {
                reader.AlignStream(AlignType.Align4);
            }

            if (IsReadBakedIndex(reader.Version))
            {
                BakedIndex = reader.ReadInt32();
            }
            if (IsReadBakingOutput(reader.Version))
            {
                BakingOutput.Read(reader);
            }
            Flare.Read(reader);
            RenderMode = (LightRenderMode)reader.ReadInt32();
            if (IsReadCullingMask(reader.Version))
            {
                CullingMask.Read(reader);
            }
            if (IsReadLightmapping(reader.Version))
            {
                Lightmapping = (LightmappingMode)reader.ReadInt32();
            }
            if (IsReadLightShadowCasterMode(reader.Version))
            {
                LightShadowCasterMode = (LightShadowCasterMode)reader.ReadInt32();
            }
            if (IsReadAreaSize(reader.Version))
            {
                AreaSize.Read(reader);
            }
            if (IsReadBounceIntensity(reader.Version))
            {
                BounceIntensity = reader.ReadSingle();
            }
            if (IsReadFalloffTable(reader.Version))
            {
                FalloffTable.Read(reader);
            }
            if (IsReadColorTemperature(reader.Version))
            {
                ColorTemperature    = reader.ReadSingle();
                UseColorTemperature = reader.ReadBoolean();
                reader.AlignStream(AlignType.Align4);
            }
        }
        private void Add(object sender, RoutedEventArgs e)
        {
            foreach (var item in StockRoom.Items)
            {
                if ((item as TabItem).IsSelected)
                {
                    if ((item as TabItem).Header.ToString() == "Shampoo")
                    {
                        AddMaterial(new Shampoo());
                    }
                    else if ((item as TabItem).Header.ToString() == "Balsam")
                    {
                        AddMaterial(new Balsam());
                    }

                    else if ((item as TabItem).Header.ToString() == "Color")
                    {
                        HairColor hairColor = new HairColor
                        {
                            Color       = color.Text,
                            Description = description.Text
                        };
                        AddMaterial(hairColor);
                    }

                    else if ((item as TabItem).Header.ToString() == "Laque")
                    {
                        AddMaterial(new Laque());
                    }

                    else if ((item as TabItem).Header.ToString() == "Powder")
                    {
                        Powder powder = new Powder
                        {
                            Color = color.Text
                        };
                        AddMaterial(powder);
                    }

                    else if ((item as TabItem).Header.ToString() == "Foundation")
                    {
                        Foundation foundation = new Foundation
                        {
                            Color       = color.Text,
                            Description = description.Text
                        };
                        AddMaterial(foundation);
                    }

                    else if ((item as TabItem).Header.ToString() == "Shadow")
                    {
                        Shadows shadows = new Shadows
                        {
                            Color = color.Text
                        };
                        AddMaterial(shadows);
                    }

                    else if ((item as TabItem).Header.ToString() == "Lipstick")
                    {
                        Lipstick lipstick = new Lipstick
                        {
                            Color       = color.Text,
                            Description = description.Text
                        };
                        AddMaterial(lipstick);
                    }

                    else if ((item as TabItem).Header.ToString() == "Mascara")
                    {
                        Mascara mascara = new Mascara
                        {
                            Color = color.Text,
                        };
                        AddMaterial(mascara);
                    }

                    else if ((item as TabItem).Header.ToString() == "NailBase")
                    {
                        AddMaterial(new NailBase());
                    }

                    else if ((item as TabItem).Header.ToString() == "NailTop")
                    {
                        AddMaterial(new NailTop());
                    }

                    else if ((item as TabItem).Header.ToString() == "NailEnamel")
                    {
                        NailPolish nailPolish = new NailPolish
                        {
                            Color = color.Text,
                        };
                        AddMaterial(nailPolish);
                    }
                }
            }
            load(null, null);
        }
Exemple #27
0
 public void AddShadow(Shadow shadow)
 {
     Shadows.Add(shadow);
 }
        public override void Read(AssetReader reader)
        {
            base.Read(reader);

            Type = (LightType)reader.ReadInt32();
            if (HasShape(reader.Version))
            {
                Shape = (LightShape)reader.ReadInt32();
            }
            Color.Read(reader);
            if (HasAttenuate(reader.Version))
            {
                Attenuate = reader.ReadBoolean();
                if (IsAlign(reader.Version))
                {
                    reader.AlignStream();
                }
            }
            if (HasIntensity(reader.Version))
            {
                Intensity = reader.ReadSingle();
            }
            Range     = reader.ReadSingle();
            SpotAngle = reader.ReadSingle();
            if (HasInnerSpotAngle(reader.Version))
            {
                InnerSpotAngle = reader.ReadSingle();
            }
            if (HasCookieSize(reader.Version))
            {
                CookieSize = reader.ReadSingle();
            }
            if (HasShadows(reader.Version))
            {
                Shadows.Read(reader);
            }
            Cookie.Read(reader);
            DrawHalo = reader.ReadBoolean();
            if (HasActuallyLightmapped(reader.Version))
            {
                ActuallyLightmapped = reader.ReadBoolean();
            }
            if (IsAlign(reader.Version))
            {
                reader.AlignStream();
            }

            if (HasBakedIndex(reader.Version))
            {
                BakedIndex = reader.ReadInt32();
            }
            if (HasBakingOutput(reader.Version, reader.Flags))
            {
                BakingOutput.Read(reader);
            }
            Flare.Read(reader);
            RenderMode = (LightRenderMode)reader.ReadInt32();
            if (HasCullingMask(reader.Version))
            {
                CullingMask.Read(reader);
            }
            if (HasRenderingLayerMask(reader.Version))
            {
                RenderingLayerMask = reader.ReadInt32();
            }
            if (HasLightmapping(reader.Version))
            {
                Lightmapping = (LightmappingMode)reader.ReadInt32();
            }
            if (HasLightShadowCasterMode(reader.Version))
            {
                LightShadowCasterMode = (LightShadowCasterMode)reader.ReadInt32();
            }
            if (HasAreaSize(reader.Version))
            {
                AreaSize.Read(reader);
            }
            if (HasBounceIntensity(reader.Version))
            {
                BounceIntensity = reader.ReadSingle();
            }
            if (HasFalloffTable(reader.Version))
            {
                FalloffTable.Read(reader);
            }
            if (HasColorTemperature(reader.Version))
            {
                ColorTemperature = reader.ReadSingle();
            }
            if (HasUseColorTemperature(reader.Version))
            {
                UseColorTemperature = reader.ReadBoolean();
                reader.AlignStream();
            }
            if (HasBoundingSphereOverride(reader.Version))
            {
                BoundingSphereOverride.Read(reader);
                UseBoundingSphereOverride = reader.ReadBoolean();
                reader.AlignStream();
            }
#if UNIVERSAL
            if (HasShadowRadius(reader.Version, reader.Flags))
            {
                ShadowRadius = reader.ReadSingle();
                ShadowAngle  = reader.ReadSingle();
            }
#endif
        }
Exemple #29
0
        public override void Read(AssetStream stream)
        {
            base.Read(stream);

            Type = (LightType)stream.ReadInt32();
            Color.Read(stream);
            if (IsReadAttenuate(stream.Version))
            {
                Attenuate = stream.ReadBoolean();
                if (IsAlign(stream.Version))
                {
                    stream.AlignStream(AlignType.Align4);
                }
            }
            if (IsReadIntensity(stream.Version))
            {
                Intensity = stream.ReadSingle();
            }
            Range     = stream.ReadSingle();
            SpotAngle = stream.ReadSingle();
            if (IsReadCookieSize(stream.Version))
            {
                CookieSize = stream.ReadSingle();
            }
            if (IsReadShadows(stream.Version))
            {
                Shadows.Read(stream);
            }
            Cookie.Read(stream);
            DrawHalo = stream.ReadBoolean();
            if (IsReadActuallyLightmapped(stream.Version))
            {
                ActuallyLightmapped = stream.ReadBoolean();
            }
            if (IsAlign(stream.Version))
            {
                stream.AlignStream(AlignType.Align4);
            }

            if (IsReadBakedIndex(stream.Version))
            {
                BakedIndex = stream.ReadInt32();
            }
            if (IsReadBakingOutput(stream.Version))
            {
                BakingOutput.Read(stream);
            }
            Flare.Read(stream);
            RenderMode = (LightRenderMode)stream.ReadInt32();
            if (IsReadCullingMask(stream.Version))
            {
                CullingMask.Read(stream);
            }
            if (IsReadLightmapping(stream.Version))
            {
                Lightmapping = (LightmappingMode)stream.ReadInt32();
            }
            if (IsReadAreaSize(stream.Version))
            {
                AreaSize.Read(stream);
            }
            if (IsReadBounceIntensity(stream.Version))
            {
                BounceIntensity = stream.ReadSingle();
            }
            if (IsReadColorTemperature(stream.Version))
            {
                ColorTemperature    = stream.ReadSingle();
                UseColorTemperature = stream.ReadBoolean();
                stream.AlignStream(AlignType.Align4);
            }
        }
Exemple #30
0
        public override List <string> GetKeywords()
        {
            var Keywords = new List <string>();

            if (Ring != null)
            {
                if (RingEnabled)
                {
                    Keywords.Add("RING_ON");
                    Keywords.Add("SCATTERING");

                    var shadowsCount = Shadows.Count((shadow) => shadow != null && Helper.Enabled(shadow));

                    if (shadowsCount > 0 && GodManager.Instance.Eclipses)
                    {
                        for (byte i = 0; i < shadowsCount; i++)
                        {
                            Keywords.Add("SHADOW_" + (i + 1));
                        }
                    }
                    else
                    {
                        Keywords.Add("SHADOW_0");
                    }
                }
                else
                {
                    Keywords.Add("RING_OFF");
                }
            }
            else
            {
                Keywords.Add("RING_OFF");
            }

            if (Atmosphere != null)
            {
                if (AtmosphereEnabled)
                {
                    var lightCount = Atmosphere.Suns.Count((sun) => sun != null && sun.gameObject.activeInHierarchy);

                    if (lightCount != 0)
                    {
                        Keywords.Add("LIGHT_" + lightCount);
                    }

                    if (Atmosphere.EclipseCasters.Count == 0)
                    {
                        Keywords.Add("ECLIPSES_OFF");
                    }
                    else
                    {
                        Keywords.Add(GodManager.Instance.Eclipses ? "ECLIPSES_ON" : "ECLIPSES_OFF");
                    }

                    if (Atmosphere.ShineCasters.Count == 0)
                    {
                        Keywords.Add("SHINE_OFF");
                    }
                    else
                    {
                        Keywords.Add(GodManager.Instance.Planetshine ? "SHINE_ON" : "SHINE_OFF");
                    }

                    Keywords.Add("ATMOSPHERE_ON");
                }
                else
                {
                    Keywords.Add("ATMOSPHERE_OFF");
                }

                if (Ocean != null)
                {
                    if (OceanEnabled && AtmosphereEnabled)
                    {
                        Keywords.Add("OCEAN_ON");
                    }
                    else
                    {
                        Keywords.Add("OCEAN_OFF");
                    }
                }
                else
                {
                    Keywords.Add("OCEAN_OFF");
                }
            }
            else
            {
                Keywords.Add("LIGHT_0");
                Keywords.Add("ATMOSPHERE_OFF");
                Keywords.Add("OCEAN_OFF");
            }

            return(Keywords);
        }
Exemple #31
0
 public void AddShadow(int packageSize, byte[] itemString, byte itemVersion)
 {
     Shadows.Add(new ItemPackageShadow(packageSize, itemString, itemVersion, TransactionId));
 }