예제 #1
0
        public override int Compare(RenderItemIndex x, RenderItemIndex y)
        {
            RenderOrderKey xKey = x.Key;
            RenderOrderKey yKey = y.Key;

            return(-xKey.GetDistance().CompareTo(yKey.GetDistance()));
        }
예제 #2
0
        public RenderOrderKey GetRenderOrderKey(Vector3 viewPosition)
        {
            float distance         = Vector3.Distance(Position, viewPosition);
            uint  materialHashCode = (uint)_regularPassMaterial.GetHashCode();

            materialHashCode = (materialHashCode & 0xFFFF0000) | ((uint)_overrideTexture.GetHashCode() & 0x0000FFFF);
            return(RenderOrderKey.Create(distance, materialHashCode));
        }
예제 #3
0
파일: MeshRenderer.cs 프로젝트: nureyev/ge
 public RenderOrderKey GetRenderOrderKey(Vector3 cameraPosition)
 {
     return(_initialized ? RenderOrderKey.Create(Vector3.Distance(Transform.Position, cameraPosition), _regularPassMaterial.GetHashCode()) : new RenderOrderKey());
 }
예제 #4
0
 public RenderOrderKey GetRenderOrderKey(Vector3 viewPosition)
 {
     return(RenderOrderKey.Create(_material.GetHashCode()));
 }
예제 #5
0
 public override RenderOrderKey GetRenderOrderKey(Vector3 cameraPosition)
 {
     return(RenderOrderKey.Create(_pipeline.GetHashCode(), cameraPosition.Length()));
 }
예제 #6
0
파일: Text2D.cs 프로젝트: zhuowp/ge
 public RenderOrderKey GetRenderOrderKey(Vector3 viewPosition)
 {
     return(RenderOrderKey.Create(_textBuffer.GetMaterialID()));
 }
예제 #7
0
 public RenderOrderKey GetRenderOrderKey(Vector3 viewPosition)
 {
     return(RenderOrderKey.Create(Vector3.Distance(Position, viewPosition), 0));
 }
예제 #8
0
파일: ParticleSystem.cs 프로젝트: zhuowp/ge
 public RenderOrderKey GetRenderOrderKey(Vector3 viewPosition)
 {
     return(_initialized ? RenderOrderKey.Create(Vector3.Distance(viewPosition, Transform.Position), _material.GetHashCode()) : new RenderOrderKey());
 }
예제 #9
0
        public RenderOrderKey GetRenderOrderKey(Vector3 viewPosition)
        {
            float distance = Vector3.Distance(Position, viewPosition);

            return(RenderOrderKey.Create(distance, _regularPassMaterial.GetHashCode()));
        }