コード例 #1
0
    public override void Bind()
    {
        set.BindPrimaryForm("_VertBuffer", Hair);
        set.BindForm("_BaseBuffer", Base);
        force.BindInt("_HairsPerVert", () => (int)Hair.countMultiplier);

        force.BindPrimaryForm("_VertBuffer", Hair);
        force.BindForm("_BaseBuffer", Base);
        force.BindInt("_NumVertsPerHair", () => Hair.numVertsPerHair);
        force.BindInt("_HairsPerVert", () => (int)Hair.countMultiplier);

        constraint.BindPrimaryForm("_VertBuffer", Hair);
        constraint.BindInt("_NumVertsPerHair", () => Hair.numVertsPerHair);

        resolve.BindPrimaryForm("_VertBuffer", Hair);
        resolve.BindInt("_NumVertsPerHair", () => Hair.numVertsPerHair);


        pass.BindPrimaryForm("_VertBuffer", Hair);
        pass.BindInt("_NumVertsPerHair", () => Hair.numVertsPerHair);

        set.BindFloat("_HairLength", () => Hair.length);
        set.BindFloat("_HairVariance", () => Hair.variance);
        set.BindInt("_NumVertsPerHair", () => Hair.numVertsPerHair);

        // Don't need to bind for all of them ( constraints ) because same shader
        force.BindFloat("_HairLength", () => Hair.length);
        force.BindFloat("_HairVariance", () => Hair.variance);
        force.BindInt("_NumVertsPerHair", () => Hair.numVertsPerHair);
        force.BindFloats("_Transform", () => this.transformArray);

        data.BindCameraData(force);
    }
コード例 #2
0
    public override void Bind()
    {
        //  print("hmmmss");
        transfer.BindPrimaryForm("_VertBuffer", verts);
        transfer.BindForm("_SkeletonBuffer", skeleton);


        TrailRibbonVerts v = (TrailRibbonVerts)verts;

        transfer.BindInt("_RibbonLength", () => v.length);

        TrailParticles s = (TrailParticles)skeleton;

        transfer.BindInt("_NumVertsPerHair", () => s.particlesPerTrail);

        parallel.BindPrimaryForm("_ParticleBuffer", particles);
        parallel.BindForm("_VertBuffer", verts);

        parallel.BindInt("_RibbonLength", () => v.length);
        parallel.BindInt("_NumVertsPerHair", () => v.length);

        data.BindCameraData(parallel);

        parallel.BindFloat("_Radius", () => this.radius);
    }
コード例 #3
0
    public override void Bind()
    {
        data.BindLandData(setTile);

        setTile.BindVector3("_Offset", () => this._Offset);
        setTile.BindInt("_ID", () => this._ID);

        data.BindLandData(setSkirt);
        setSkirt.BindFloat("_WhichGrid", () => this.whichGrid);
        setSkirt.BindFloat("_Size", () => this.tileSize);
        setSkirt.BindFloat("_RingSize", () => this.ringSize);
        setSkirt.BindInt("_TileDimensions", () => this.tileDimensions);
        setSkirt.BindInt("_CenterX", () => this.currentCenterX);
        setSkirt.BindInt("_CenterY", () => this.currentCenterY);
    }
コード例 #4
0
 public override void Bind()
 {
     life.BindForm("_HumanBuffer", humanBuffer);
     life.BindFloat("_HumanRadius", () => this.radius);
     life.BindFloat("_HumanForce", () => this.power);
     life.BindInt("_ParticlesPerPerson", () => this._ParticlesPerPerson);
 }
コード例 #5
0
    public override void Bind()
    {
        data.BindLandData(setTile);

        setTile.BindVector3("_Offset", () => this._Offset);
        setTile.BindInt("_ID", () => this._ID);
    }
コード例 #6
0
    public override void Bind()
    {
        set.BindPrimaryForm("_VertBuffer", Hair);
        set.BindForm("_BaseBuffer", Base);

        collision.BindPrimaryForm("_VertBuffer", Hair);
        collision.BindForm("_BaseBuffer", Base);

        constraint0.BindInt("_Pass", 0);
        constraint0.BindPrimaryForm("_VertBuffer", Hair);
        constraint0.BindInt("_NumVertsPerHair", () => Hair.numVertsPerHair);

        constraint1.BindInt("_Pass", 1);
        constraint1.BindPrimaryForm("_VertBuffer", Hair);
        constraint1.BindInt("_NumVertsPerHair", () => Hair.numVertsPerHair);

        set.BindFloat("_HairLength", () => Hair.length);
        set.BindFloat("_HairVariance", () => Hair.variance);
        set.BindInt("_NumVertsPerHair", () => Hair.numVertsPerHair);

        // Don't need to bind for all of them ( constraints ) because same shader
        collision.BindFloat("_HairLength", () => Hair.length);
        collision.BindFloat("_HairVariance", () => Hair.variance);
        collision.BindInt("_NumVertsPerHair", () => Hair.numVertsPerHair);
        collision.BindFloats("_Transform", () => this.transformArray);

        data.BindCameraData(collision);
    }
コード例 #7
0
    public override void Bind()
    {
        set.BindPrimaryForm("_VertBuffer", particles);

        set.BindInt("_Size", () => size);

        set.BindVector3("_TopLeft", () => this.topLeft);
        set.BindVector3("_TopRight", () => this.topRight);
        set.BindVector3("_BottomLeft", () => this.bottomLeft);
        set.BindVector3("_BottomRight", () => this.bottomRight);


        simulate.BindPrimaryForm("_VertBuffer", particles);
        simulate.BindInt("_Locked", () => locked);
        simulate.BindFloat("_DeathTime", () => deathTime);
        simulate.BindFloat("_Distance", () => distance);
        simulate.BindFloat("_CanEdgeSwipe", () => data.inputEvents.canEdgeSwipe);
        simulate.BindInt("_ClosestID", () => (int)checkClosest.closestID);


        data.BindAllData(simulate);
        data.BindAllData(transfer.transfer);

        transfer.transfer.BindInt("_NumVerts", () => this.size);
        transfer.transfer.BindInt("_NumSmoothedVerts", () => this.smoothedSize);

        transfer.transfer.BindFloat("_DeathTime", () => deathTime);
        transfer.transfer.BindInt("_Locked", () => locked);
        transfer.transfer.BindFloat("_Distance", () => distance);
        transfer.transfer.BindFloat("_CanEdgeSwipe", () => data.inputEvents.canEdgeSwipe);

        transfer.transfer.BindFloat("_Fade", () => currentPage.fade);



        corners.transfer.BindFloat("_Distance", () => distance);
        corners.transfer.BindFloat("_Fade", () => currentPage.fade);

        corners.transfer.BindInt("_Locked", () => locked);
        corners.transfer.BindFloat("_DeathTime", () => deathTime);



        checkClosest.Set(particles);
        data.BindAllData(checkClosest);
    }
コード例 #8
0
    public override void Bind()
    {
        force.BindPrimaryForm("_VertBuffer", verts);
        force.BindForm("_SkeletonBuffer", skeleton);

        force.BindInt("_NumVertsPerHair", () => skeleton.numVertsPerHair);
        force.BindInt("_NumHairs", () => skeleton.numHairs);
        force.BindInt("_VertsPerVert", () => verts.vertsPerVert);

        constrain.BindPrimaryForm("_VertBuffer", verts);
        constrain.BindForm("_SkeletonBuffer", skeleton);

        constrain.BindInt("_NumVertsPerHair", () => skeleton.numVertsPerHair);
        constrain.BindInt("_NumHairs", () => skeleton.numHairs);
        constrain.BindInt("_VertsPerVert", () => verts.vertsPerVert);
        constrain.BindFloat("_Length", () => this.armLength);
    }
コード例 #9
0
    public override void Bind()
    {
        simulate.BindInt("_Frame", () => frame);
        simulate.BindPrimaryForm("_VertBuffer", verts);
        simulate.BindForm("_ConnectionBuffer", connections);

        resolve.BindPrimaryForm("_VertBuffer", verts);
        resolve.BindForm("_ConnectionBuffer", connections);


        closest.Set(verts);
    }
コード例 #10
0
    public override void Bind()
    {
        sim.BindPrimaryForm("_VertBuffer", verts);
        sim.BindForm("_InfoBuffer", info);
        sim.BindForm("_ConnectionBuffer", connections);


        sim.BindVector3("_RO", () => _RO);
        sim.BindVector3("_RD", () => _RD);
        sim.BindInt("_SelectedVert", () => selectedVert);
        sim.BindInt("_ActiveVert", () => activeVert);

        closest.BindPrimaryForm("_VertBuffer", verts);
        closest.BindVector3("_RO", () => _RO);
        closest.BindVector3("_RD", () => _RD);


        resolve.BindInt("_SelectedVert", () => selectedVert);
        resolve.BindPrimaryForm("_VertBuffer", verts);
        resolve.BindForm("_ConnectionBuffer", connections);
    }
コード例 #11
0
 public void SelfBind(Life toBind)
 {
     toBind.BindInt("_ParticlesPerParticle", () => this.particlesPerParticle);
     toBind.BindForm("_BaseBuffer", baseParticles);
     toBind.BindPrimaryForm("_VertBuffer", this);
 }
コード例 #12
0
    public override void Bind()
    {
        setGlyph.BindForm("_TransferBuffer", body.verts);
        setGlyph.BindForm("_VertBuffer", particles);
        setGlyph.BindPrimaryForm("_AnchorBuffer", anchor);

        setAnchor.BindForm("_VertBuffer", particles);
        setAnchor.BindPrimaryForm("_AnchorBuffer", anchor);

        setPage.BindForm("_AnchorBuffer", anchor);
        setPage.BindForm("_VertBuffer", particles);

        simulate.BindPrimaryForm("_VertBuffer", particles);
        simulate.BindForm("_TransferBuffer", body.verts);

        transfer.BindPrimaryForm("_TransferBuffer", body.verts);
        transfer.BindForm("_VertBuffer", particles);



        setPage.BindVector3("_EmitPos", () => this.emitterPosition);

        setGlyph.BindFloat("_Radius", () => this.radius); //"radius",this);//.BindForm("_VertBuffer",particles);
        setGlyph.BindFloat("_Scale", () => this.scale);   //.BindForm("_VertBuffer",particles);


        /*  var scaleGetter = () -> { return this.scale; };
         * setGlyph.BindAttribute("_Scale", () -> { return this.scale; }, float); */

        setGlyph.BindInt("_BaseID", () => this.currentMin);
        setAnchor.BindInt("_BaseID", () => this.currentMin);
        setPage.BindInt("_BaseID", () => this.currentMin);
        simulate.BindInt("_BaseID", () => this.currentMin);
        transfer.BindInt("_BaseID", () => this.currentMin);

        setGlyph.BindInt("_TipID", () => this.currentMax);
        setAnchor.BindInt("_TipID", () => this.currentMax);
        setPage.BindInt("_TipID", () => this.currentMax);
        simulate.BindInt("_TipID", () => this.currentMax);
        transfer.BindInt("_TipID", () => this.currentMax);

        setGlyph.BindFloat("_FontWidth", () => Arial.width);
        setGlyph.BindFloat("_FontHeight", () => Arial.height);
        setAnchor.BindFloat("_FontSize", () => Arial.size);

        setAnchor.BindFloat("_FontWidth", () => Arial.width);
        setAnchor.BindFloat("_FontHeight", () => Arial.height);
        setAnchor.BindFloat("_FontSize", () => Arial.size);
        setAnchor.BindFloat("_Radius", () => this.radius); //"radius",this);//.BindForm("_VertBuffer",particles);
        setAnchor.BindFloat("_Scale", () => this.scale);   //.BindForm("_VertBuffer",particles);



        /* simulate.BindAttribute("_Active","pageActive",story);
         *
         * simulate.BindAttribute("_Up","up",story.ursula);
         * simulate.BindAttribute("_CameraForward","forward",touch);
         * simulate.BindAttribute("_CameraUp","up",touch);
         * simulate.BindAttribute("_PageAlive","pageAlive",story);
         * simulate.BindAttribute("_UrsulaPos","position" , story.ursula );
         *
         * simulate.BindAttribute("_Fade","fade" , story );
         *
         * simulate.BindAttribute("_RayOrigin", "RayOrigin",touch);
         * simulate.BindAttribute("_RayDirection", "RayDirection",touch);
         * simulate.BindAttribute("_Scale","scale",this);*/
    }