Transferred from: http://aigo.iteye.com/blog/2279503
voidAracespline::onconstruction (Constftransform&Transform) { for(Int32 i =0; I < msplinecomponent->getnumsplinepoints ()-1; i++) {usplinemeshcomponent* Splinemesh = constructobject<usplinemeshcomponent> (Usplinemeshcomponent::staticclass (), This); Splinemesh->bcreatedbyconstructionscript =true; Splinemesh-setmobility (ecomponentmobility::movable); Splinemesh->attachparent =msplinecomponent; //Set the color! umaterialinstancedynamic* Dynamicmat =umaterialinstancedynamic::create (msplinemeshmaterial, NULL); Dynamicmat->setvectorparametervalue (TEXT ("Color"), Flinearcolor (Msegments[i].mcolor)); Splinemesh->bcastdynamicshadow =false; Splinemesh-Setstaticmesh (Mgridmesh); Splinemesh->setmaterial (0, Dynamicmat); //Width of the meshSplinemesh->setstartscale (Fvector2d ( -, -)); Splinemesh->setendscale (Fvector2d ( -, -)); Fvector Pointlocationstart, Pointtangentstart, Pointlocationend, pointtangentend; Msplinecomponent-Getlocallocationandtangentatsplinepoint (i, Pointlocationstart, Pointtangentstart); Msplinecomponent->getlocallocationandtangentatsplinepoint (i +1, Pointlocationend, pointtangentend); Splinemesh-setstartandend (Pointlocationstart, Pointtangentstart, Pointlocationend, pointtangentend); } registerallcomponents (); }
[UE4] C + + code manipulation Splinemesh