Jump to content


New Member
  • Content Count

  • Joined

  • Last visited

Community Reputation

5 Poor

1 Follower

About Ivanpais

  • Birthday 09/27/1991

Contact Methods

  • Website URL
  • Skype

Profile Information

  • First Name
  • Last Name
  • C4D Ver
    18.057 Studio
  • Location
  • Interests
    Motion Graphics, Fitness, Entrepreneurship

Recent Profile Visitors

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

  1. Hey Rectro, thousand thanks, finally I got it by setting this settings, and using the clump option with and adjusted graph. These were my settings. Clumping the hair at max level only where they go through the gum was the key. And here is the final result. :)
  2. Thanks for taking your time to check it, indeed, what you mention makes things a bit better, but I still can't get rid of all the hairs that jump out.... Let's see if that hair maestro comes along :D
  3. Here is a scene file, if somebody wants to check it. Hair.zip
  4. Hi Cerbera Yes, it does.
  5. Hi Guys! I have a little problem over here, I'm creating a few characters, one of them is a girl with pigtails. Both pigtails are tied with a hair gum. I have set up my hair guides as follows: As you can see, all guides go perfectly through the hair gum. The problem comes when I try to render, this happens with the hair on the back of her head: It seems like the hairs created between those pigtails are trying to interpolate between the guides on the left as well as on the right, creating that strange effect. As you may see, there are also hairs on the side that don't go through the gums. FYI there's nothing activted in the hair modifiers like kink, curl and all that stuff. I would appreciate any help. Thank you!!
  6. Hey Nachov! Sure, here you have the result, enjoy :)
  7. Hey Cerbera, thank you for taking time to think about it, I just found the solution in the help documentation. It's as easy as making all objects children of the instanced object, and choosing "Random" in the hierarchy drop-down.
  8. Hey Guys, I just ran into a problem: I'm creating a guy made out of pencils with a cloner and rigid bodies, something like this: Everything good until here, that's when the client requested the pencils not to be randomly placed, instead to follow a hair-like structure. Then I used hair, achieving something more like this: Alright, the problem comes when I instance my pencil onto this hair, I get always the same pencil. Does anyone know how I can instance different objects randomly onto this hair, or at least assign randomly different textures to this instances? Thank you beforehand guys!
  9. Ivanpais

    Remap a color ramp to B/W

    Hi Cerbera Thank you for the reply. Sadly, that's already the level of detail I found on other sites, so I think I'll finally go with a combination of this low-detail heightmap and some handpainting on top in PS. Anyway thank you for the Tip, that site is actually great, and the heightmaps are super easy to download.
  10. Hey Guys, I hope somebody can help me with a little task... I'm working on a project where I have to build a 3D model of one of the Canary Islands, called La Palma, with as much detail as I can. I've already searched all sites with geospatial data, NASA pictures, and all that stuff, but none of them reaches my desired level of detail. The only one I found is on a viewer, on a site of the government, which yes, has a decent amount of detail, but is useless to me since I need it in greyscale, and this is somehow color-coded ranging from green to red and white. Green means it's lower and white is the highest point. (See pic) So now, back to my question. Does anybody know how I can Remap this color ramp, to a greyscale Image? Maybe something like the colorama effect in AE, but inverted? Thank you guys, I'm looking forward to hearing your answers.
  11. Hi folks! This last year I started learning how to script with Python and tried to improve my skills every day. While I'm no expert at all, I'm starting to understand the whole secret behind Python, and finally managed to develop some tools that help me on my daily work. This first one, which I want to share with this community that helped me so much since I started in this industry is just a little script which checks the selected object's tracks, and their keyframes and deletes them if the track has only one keyframe, or if the whole track has multiple keyframes, but all with the same value. I don't really know if there is already something out there taht does the same, or maybe if MAXON has already implemented a function like this into Cinema 4d, anyway, I'll be happy if it is useful to anyone starting with C4DPy, because there is so little information about Python scripting out there. The script is written as easy as I could, and trying to keep it simple and easy to understand. I added a lot of comments to understand the code. It also prints a lot of stuff to the console, so you can read what's happening once executed. Just download the file and unzip into your lybrary-> scripts folder You can also download it from my website: www.ivanpais.es I would be super happy if anybody finds errors, bugs, or or any kind of possible improvement. Here is the code for you to learn, change, destroy, or whatever you like! #Sript created by Iván Pais #Please check out my website www.ivanpais.es #Feel free to contact me through info@ivanpais.es #I would be super happy if you take me into account for freelance work and collaborations #Enjoy! import c4d from c4d import gui def checkEqual(lst): #Checks if the values inside a list are equal return lst[1:] == lst[:-1] print (lst[1:] == lst[:-1]) def main(): actobjs = doc.GetSelection() #Get seletion list doc.StartUndo() for obj in actobjs: #Loop for every object doc.AddUndo(c4d.UNDOTYPE_DELETE,obj) tracks = obj.GetCTracks() #Gets object's tracks counter = 0 for t in tracks: #Loop for every track if "Visible" in str(t): #Checks if it's a visibility track, and avoids the loop' continue if "Sound" in str(t): #Checks if it's a sound track, and avoids the loop' continue tcurve = t.GetCurve() #Get Curve of this track print "Curve for track %s is %s, " %(counter,tcurve) kcount = t.GetCurve().GetKeyCount()#Get key count of this track print "This track has %s keys" % (kcount) keylist = []#Creates a list with all keys for x in range(int(kcount)): key=tcurve.GetKey(x) keylist.append(key) print "Keys of this track are %s" % keylist valuelist = []#Creates a list with the values stored in keyslist for x in keylist: valuelist.append(x.GetValue())#Gets the keys in keylist and appends it's value to valuelist' print valuelist if checkEqual(valuelist) == True: #Passes valuelist to checkEqual function to check if all values are the same t.Remove() #Removes that track if true c4d.EventAdd(c4d.EVENT_FORCEREDRAW) #Foreces redraw to apply changes counter +=1 doc.EndUndo() if __name__=='__main__': main() DeleteEmptyTracks.zip