Jump to content

wandersonp

Members
  • Posts

    115
  • Joined

  • Last visited

  • Days Won

    1

wandersonp last won the day on January 27 2015

wandersonp had the most liked content!

About wandersonp

  • Birthday December 16

Contact Methods

  • Website URL
    http://vimeo.com/misterson

Personal Information

  • Name
    Wanderson
  • Location
    Brazil
  • Interests
    computer graphics, programming, math

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

wandersonp's Achievements

Newbie

Newbie (1/14)

11

Reputation

  1. Hey guys the original example from VEX_Sort is not working at least in my windows machine I change the code #include <UT/UT_DSOVersion.h> #include <UT/UT_Array.h> #include <UT/UT_Vector3.h> #include <UT/UT_Vector4.h> #include <UT/UT_Matrix3.h> #include <UT/UT_Matrix4.h> #include <UT/UT_Assert.h> #include <VEX/VEX_VexOp.h> using namespace UT::Literal; namespace HDK_Sample { template <typename T> int compareValues(const T *a, const T *b) { if (*a < *b) return -1; if (*a > *b) return 1; return 0; //Direct access to pointer value is not working in compare operator //return *a > *b; } template <> int compareValues<const char *>(const char * const *a, const char * const *b) { return strcmp(*a, *b); } template <> int compareValues<UT_Vector3>(const UT_Vector3 *a, const UT_Vector3 *b) { if (a->length2() < b->length2()) return -1; if (a->length2() > b->length2()) return 1; return 0; //Direct access to pointer value is not working in compare operator //return a->length2() > b->length2(); } template <> int compareValues<UT_Vector4>(const UT_Vector4 *a, const UT_Vector4 *b) { if (a->length2() < b->length2()) return -1; if (a->length2() > b->length2()) return 1; return 0; //Direct access to pointer value is not working in compare operator //return a->length2() > b->length2(); } template <> int compareValues<UT_Matrix3>(const UT_Matrix3 *a, const UT_Matrix3 *b) { if (a->determinant() < b->determinant()) return -1; if (a->determinant() > b->determinant()) return 1; return 0; //Direct access to pointer value is not working in compare operator //return a->determinant() > b->determinant(); } template <> int compareValues<UT_Matrix4>(const UT_Matrix4 *a, const UT_Matrix4 *b) { if (a->determinant() < b->determinant()) return -1; if (a->determinant() > b->determinant()) return 1; return 0; //Direct access to pointer value is not working in compare operator //return a->determinant() > b->determinant(); } template <typename T> static void sort(int argc, void *argv[], void *) { UT_Array<T> *arr = (UT_Array<T> *)argv[0]; // This will work with all types (including strings). Since no strings // are created or destroyed by this method, it's not necessary to call // VEX_VexOp::stringAlloc() or VEX_VexOp::stringFree() to free them - // the pointers are just reordered in the array. arr->sort(compareValues<T>); } static void decimate(int argc, void *argv[], void *) { const UT_Array<const char *> &src = *(UT_Array<const char *> *)argv[1]; UT_Array<const char *> &dst = *(UT_Array<const char *> *)argv[0]; UT_ASSERT(dst.entries() == 0); for (int i = 0; i < src.entries() / 2; i++) { // Acquire a new reference to the string for storage in the // destination array. const char *str = VEX_VexOp::stringAlloc(src(i * 2)); dst.append(str); } } } // // Installation function // using namespace HDK_Sample; void newVEXOp(void *) { // Sort the array by value for scalars, length for vectors, or // determinant for matrices. new VEX_VexOp("hdksort@*[I"_sh, // Signature sort<VEXint>); // Evaluator new VEX_VexOp("hdksort@*[F"_sh, // Signature sort<VEXfloat>); // Evaluator new VEX_VexOp("hdksort@*[S"_sh, // Signature sort<const char *>); // Evaluator new VEX_VexOp("hdksort@*[V"_sh, // Signature sort<VEXvec3>); // Evaluator new VEX_VexOp("hdksort@*[P"_sh, // Signature sort<VEXvec4>); // Evaluator new VEX_VexOp("hdksort@*[3"_sh, // Signature sort<VEXmat3>); // Evaluator new VEX_VexOp("hdksort@*[4"_sh, // Signature sort<VEXmat4>); // Evaluator // Remove every second string in the source array and store the result // in the destination. new VEX_VexOp("hdkdecimate@&[S[S"_sh, // Signature decimate); // Evaluator }
  2. What makes a compatible compiled SOP, there is something diferent from the usual cookMySop function in C++. Or someone have a example from some compatible compiled SOP node? Thanks Wanderson
  3. If you have the HoudiniFX license, you can contact sideFX for a conversion I think.
  4. Hey guys I have a curiosity about render, its possible to render just a small rectangle area for a frame which contains the object that is moving and make that way to render all frames? like a per frame crop, to optimize the black render processing for mantra Thanks
  5. Hey guys Im trying to create a hard constraint in some points of a tetrahedralize geometry, and I apply that s@constraint_name = "hard"; s@constraint_type = "position"; how can I do to stick the ground pieces in my FEM simulation and make the shape behave like soft rubber or iron. Thanks bar_deforming_FEM_v001_t001.hip
  6. Recently I discover something interesting after smash my head against wall for a few days. Im creating a simulation using bullet and packed prims, and I need activate (using i@active variable ) the pieces in choreographed way over the frames But the thing make me crazy is that bullet change ptnum of each packed primitive over the time, and I think is about some priority list inside the algorithm of the solver. because after the simulation I need to atach some atributes for each simulated piece. Then I realize that I need to attach theses attributes before simulation or atach some sort of ptnum tracking for them. bullet activate order points_v001.hip
  7. Hey guys, I recently watched this cinematic from The Crew game And I appreciate some advice to create this piece formation with lines and some kind of voronoi procedural inside. Thanks https://www.vimeo.com/117897084
  8. edward, thats fantastic, thanks a lot for the explanation and links.
  9. Hey guys in my work daily I use frequently cos, sin, acos, asin, I know that dot is cossine between the given 2 vectors, and the magnitude o cross between 2 vectors is sin of angle between this 2 vectors, this stuff make a lot of sense to me right now. but what I dont recognize yet is the use of tangent, in procedural and simulation stuff. I understand the graphic function but not a usefull use of that in daily work. Can anyone show me simple example of the tangent function? Which I can use in real work. Thanks
  10. thanks iamyog I found a possible solution and works for my deadline, I was using a parent animated NULL at sky rig volume to opposite the movement from the airplane , I removed animation from the container and become static, and increase the shading quality multiplier from mantra node to 4.
  11. Hey guys I have some issues with microvoxel rendering I using 8x8 sampling and volume quality 1 even with this parameters I got the frame flicking, its like density randomize at some places of the clouds. there is some parameters to tweak to get much better frame by frame consistency?
  12. I found the non divergent project nodes have the navier stokes equation hardcoded in c++.
×
×
  • Create New...