示例#1
0
        public VoxelVertexOutput ResolveVoxelVertex(VoxelVertexInput input, VoxelModelGenerationSettings settings)
        {
            VoxelVertexOutput output = new VoxelVertexOutput();

            output.SetDefaults(input, settings);
            return(output);
        }
示例#2
0
 public VoxelModelGenerateTask(IVoxelVolume volume, IVoxelMaterialResolver resolver, VoxelModelGenerationSettings settings)
 {
     m_Volume           = volume;
     m_MaterialResolver = resolver;
     m_Settings         = settings;
     m_Intermediate     = new IntermediateData();
 }
        public void SetDefaults(VoxelVertexInput input, Material mat, VoxelModelGenerationSettings settings)
        {
            BoundsInt bounds = input.SourceVolume.GetVolumeBounds();
            Vector3   centre = Vector3.Scale(bounds.size, settings.NormalizedPivot) + bounds.min;

            RenderedMaterial = mat;
            Position         = Vector3.Scale(((input.Coord + input.CoordOffset) - centre), settings.Scale);
            Normal           = input.Normal;
        }
        public static VoxelModelGenerationRequest NewModelRequestSync(IVoxelVolume volume, IVoxelMaterialResolver resolver, VoxelModelGenerationSettings settings)
        {
            VoxelModelGenerationRequest request = new VoxelModelGenerationRequest(new VoxelModelGenerateTask(volume, resolver, settings), false);

            return(request);
        }