コード例 #1
0
    public void Init()
    {
        SB = new SceneBox(SdfShader);
        //Info = new List<OpAndType>();
        //Operations = new List<MeshFilter>();

        //int size = Operations.Count;
        //for(int i = 0; i < size; i++)
        //{
        //    Info.Add(new OpAndType(Operations[i], BooleanType.Union));
        //}
    }
コード例 #2
0
        ///////////////////////////////////////////

        protected override void OnAttach()
        {
            base.OnAttach();

            //create window
            window = ControlDeclarationManager.Instance.CreateControl("Gui\\GUISamples2Window.gui");
            Controls.Add(window);

            sceneBox = (SceneBox)window.Controls["SceneBox"];

            ((Button)window.Controls["Close"]).Click += Close_Click;
            ((Button)window.Controls["SceneBoxChangeModel"]).Click      += SceneBoxChangeModel_Click;
            ((Button)window.Controls["SceneBoxCreateParticle"]).Click   += SceneBoxCreateParticle_Click;
            ((Button)window.Controls["SceneBoxFullScreenEffect"]).Click += SceneBoxFullScreenEffect_Click;
            //( (Button)window.Controls[ "RenderToTextureTest" ] ).Click += RenderToTextureTest_Click;

            BackColor  = new ColorValue(0, 0, 0, .5f);
            MouseCover = true;

            renderToTexture.Create(window.Controls["RenderToTextureOutput"]);
        }
コード例 #3
0
ファイル: GUISamples2Window.cs プロジェクト: whztt07/SDK
        ///////////////////////////////////////////
        protected override void OnAttach()
        {
            base.OnAttach();

            //create window
            window = ControlDeclarationManager.Instance.CreateControl( "Gui\\GUISamples2Window.gui" );
            Controls.Add( window );

            sceneBox = (SceneBox)window.Controls[ "SceneBox" ];

            ( (Button)window.Controls[ "Close" ] ).Click += Close_Click;
            ( (Button)window.Controls[ "SceneBoxChangeModel" ] ).Click += SceneBoxChangeModel_Click;
            ( (Button)window.Controls[ "SceneBoxCreateParticle" ] ).Click += SceneBoxCreateParticle_Click;
            ( (Button)window.Controls[ "SceneBoxFullScreenEffect" ] ).Click += SceneBoxFullScreenEffect_Click;
            //( (Button)window.Controls[ "RenderToTextureTest" ] ).Click += RenderToTextureTest_Click;

            BackColor = new ColorValue( 0, 0, 0, .5f );
            MouseCover = true;

            renderToTexture.Create( window.Controls[ "RenderToTextureOutput" ] );
        }
コード例 #4
0
    /// <summary>
    /// MC 局部更新
    /// </summary>
    /// <param name="SB"></param>
    public UseMcShader(SceneBox SB, ComputeShader mcShader)
    {
        McShader = mcShader;
        Npoint   = SB.ncells + Vector3Int.one;
        McMin    = SB.localBox.min;
        Voxels   = new Vector4[Npoint.x * Npoint.y * Npoint.z];

        var tmp = SB.TexMatrix.GetPixelData <float>(0);

        for (int x = 0; x < Npoint.x; x++)
        {
            for (int y = 0; y < Npoint.y; y++)
            {
                for (int z = 0; z < Npoint.z; z++)
                {
                    Vector3 coord = new Vector3(McMin.x + x * Constants.Step, McMin.y + y * Constants.Step, McMin.z + z * Constants.Step);
                    int     idx   = x + y * Npoint.x + z * Npoint.y * Npoint.x;
                    //int idx = z + y * Npoint.z + x * Npoint.y * Npoint.z;
                    Voxels[idx] = new Vector4(coord.x, coord.y, coord.z, tmp[idx]);
                }
            }
        }
    }