Jump to content


Monthly Contributor
  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by jed

  1. I think it has to be an even honeycomb, the same pitch as the channel spacing, to get a nice bell shape.
  2. Did you have a honeycomb array of colliders ? If you look at the math, each collider is a left or right decision and the number of possible paths to the channels is a bell curve. My model is a fair approximation, but I think maybe the balls colliding with each other affects the result - I should have had the balls more spaced out time-wise. Stats being what they are, you get the best results with a large number of objects. I made that scene in R14 - before honeycomb cloners
  3. A bit off topic, but related to balls and bell curves - There's a gadget called Galton's board (also Quincunx) where balls fall through a honeycomb of collider rods, and into some collection channels. The math says the distribution in the collectors should be a bell curve. It's related to Pascal's triangle. I made one a few years ago - it's just a glorified egg-timer... https://www.mathsisfun.com/data/quincunx.html https://en.wikipedia.org/wiki/Bean_machine
  4. @pdeb Just noticed that due to the math starting at F1, the 1st cylinder gets ignored. You could edit line 21 to cyl = cyls[frame - 1] to fix that.
  5. This file is a bit basic - I just made the cloner editable and iterated the clones. track me.c4d
  6. I see what you mean Cerbera - same applies to dynamic connectors. If you have 2 objects and a hinge, crtl-drag makes copies but the 2nd hinge is linked to the 1st 2 objects whereas copy/paste links the 2nd hinge to the 2nd 2 objects.
  7. If you mean here the problem is that you are attempting to drive door left rot B from 2 sources - you can't have 2 different values plugged into the same input port.
  8. If the ball is on the ground, Roll It works quite well https://eggtion.net/en/blog/cinema4d-en/roll-it-2017-en/ I usually set the radius of the sphere manually in Roll It - more accurate.
  9. Can someone elaborate on the difference between ctrl-drag and ctrl-C ctrl-V ? I'm intrigued...
  10. @AlexisB copy the XPresso null into your scene. Double click the XPresso tag to open the XPresso window. The nodes in XP are inputs on left, outputs on right. The time node gives an integer for current frame. This is plugged into a math modulo that counts up to a number (the constant) then repeats eg modulo 5 would output 0, 1, 2, 3, 4, 0, 1, 2, 3, 4, 0, 1, 2 etc < note it never reaches 5 - resets to 0 dividing the modulo output by the actual modulo number gives a linear ramp from 0 >>> 1 repeating. This drives the align to spline position 50% = 0.5, 100% = 1 etc. To connect the align node, I dragged the align tag into the window, clicked the blue square and selected position from the drop down menu to make a port. Then click and drag to make the connection. You can delete my align node and replace it with yours, but a quick shortcut is to just drag your align tag and drop it on top of the existing one. Either method is OK. Adjust the constant value to fit your animation.
  11. Here's some XPresso to loop past 100% on a spline. xp_looper.c4d
  12. I had a go at the perpetual motion gadget on Pepper Potts desk -
  13. Can I add that 0-100% on a user data slider (and the GUI) is represented as 0-1 in XPresso. If you use user defined values of 0-100 in range map, you might find things are out by a factor of 100. 27% = 0.27 etc. Same applies to rotation - degrees in the GUI are radians in XPresso - this time you'd only be out by a factor of 57 . Also applies to user data sliders with degree as unit - 30 deg on a slider is 0.52 inside XPresso. These things caught me out when I first started with XPresso. Best to hang result nodes on ports to check values.
  14. In the range mapper horizontal axis is input, vertical is output. You can set the numerical ranges inside the node or exxternal using math multipy etc - then the range map is a 1 : 1 map with spline shape as response curve. The spline has the usual bezier handles - use ctrl click to make points, and you can clamp the max + min of input and output. Without clamp, RM calculates a corresponding output outside the set ranges - can give unexpected results. rangemap.c4d
  15. The problem for anyone starting out wtih C4D Python is that the MAXON Python site is IMHO very complex and intimidating (maybe I should be generous and say 'very thorough' ), whilst most YouTube Python tutorials are about Python in general - not relating to C4D. Cairyn's series of blogs fills the gap between those 2 extremes, in that it's about learning to use Python in C4D. I've just read the 1st 8 posts and I'd say it's a good place to start for C4D users with no coding experience. Recommended.
  16. I have the old version - seems to work on R16 but not R20. Guess it must be COFFEE https://www.dropbox.com/s/cmdvl9g6wswmoiy/IvyGrower.zip?dl=1
  17. Here's my version of an amusing little device I saw on YouTube + Wiki - traces an ellipse. trammel.c4d
  18. I concur with @Voytech re steps per frame - it's the usual fix for dynamic stuff intersecting. If an object is moving fast enough to be on the other side of a collider in the space of 1F, then it needs more calculations per frame.
  19. jed


    In programming you often need to loop output back to input. This is not allowed in XPresso, but can be done with user data. This file uses the same principle to read the length of a string and insert the length into the actual string. Change the words and refresh the viewport string_length.c4d
  20. jed


    You can keep a running total frame to frame by writing to user data and reading it back. In this file I used a one shot monoflop duration 0F to clean up the triggers - pinball2.c4d score would look good in Digital Readout Upright font
  21. jed


    It's not really games, I just sometimes make scenes where I can drive stuff around the viewport. I first got interested in this when C4D dynamics improved with motors, car steering etc. You can easily make XPresso car steering with user data controls, but it works better with ctrl alt as L/R. Here's a Hummer with Python steering offroad.zip This stickman on a unicycle has steering and auto rebound at the edges of the floor. It uses the base80 wheel to get correct wheel rotation unicycle.zip in this clip I swapped manual steer for a bit of Python random these 2 sphere rigs need the RollIt plugin from https://eggtion.net/en/blog/cinema4d-en/roll-it-2017-en/ cafesphere.zip this BB8 character has steering + caps lock for stop/start because his head wobbles when he stops https://www.dropbox.com/s/739vsj622vlht77/bb8.zip?dl=1 Today when I dug these files out, I noticed that sometimes the ctrl or alt keys seemed to 'stick'. After swapping keyboards and trying different pcs I deduced that it's possibly an R21 bug. YMMV, but if one of the objects goes round in circles, just hit the key again.
  22. jed


    @bentraje here's a pinball game - you control the flippers with ctrl and alt (only tested on Windows). Sounds should be embedded. pinball.c4d I've found that with real-time games on C4D, the gfx card makes a big difference eg I tested my pinball on a 4770K using on-die graphics and it's really slow, but OK on main pc with GTX 1650 card. I can dig out some other real-time stuff if anyone's interested. For keyboard interaction, although most keys are already assigned in C4D, the modifier keys 'ctrl alt shift' are available. Code for this at Cineversity here.
  23. Sorry, I don't know the answer to that.
  24. It's how Python marks out blocks of code eg a conditional statement or a for loop controls the lines below that are indented.
  25. I was playing around with spline rail and the swirly text that was used in the 60's, and came up with this I used Python to switch the colors poster.c4d Freddie Hubbard and Herbie Hancock on this clip
  • Create New...