ASC-CDL stands for the American Society of Cinematograpy's Color Decisions List
It's designed to create a standarized protocol to share basic color correction data across different systems form different vendors. It is a protocol that can be applied to either scene referred linear or log-like encoded imagery. The following outlines scene referred as Blender’...
What Non-Color Data means
Choosing Color Data vs Non-Color Data determines whether or not Blender will color manage your image.
Gamma Correction is a way of compressing color data and is commonly used in many image formats, such as PNG and JPEG. Without getting in to the mathematical nitty-gritty, Gamma Correction raises the intensity of a pixel to a ...
Using Animation Nodes
Updated for Animation Nodes 2.0!
Method with the Molecular Modifier and CubeSurfer below!!!
Another way to do this is using @Jacques Lucke's Animation Nodes addon. Here is the final result:
And here is a picture of the node setup:
This is done with a Rigid Body Simulation and Vertex Colors. After installing Animation Nodes (linked ...
It looks like the model is made using technique similar to metaballs in blender. To Create metaballs, in object mode Add > Metaball > Ball, and Add > Metaball > Plane for the surface
That kind of material can be achieved usin position from Geometry node, adding Separate XYZ, plugging z output to Math node set to "modulo" with unconnected socket at 1, and ...
This type of material is super easy to do in cycles. First break down what you want to do.
You want to have a gradient (three color stops).
You want the gradient running along the Z axis.
With that as our objective, we don't even need to touch any UV mapping.
Start by getting a gradient running in the direction you want (Z axis).
There are several ways to ...
By inverting the RGB channels before splitting them I was able to create a working setup that is also easier to understand.
Here is the new node setup:
There are a few things that can probably be tweaked and improved, but in essence the problem is solved.
The slight deviation in color is caused by dithering. If you want to save accurate values for non-color data, then you have to:
Set Dither to zero in Output Properties > Post Processing
Use one of the following options: Set the View Transform to Raw, disable Save As Render in the file browser or save as OpenEXR to by pass the color management. The latter ...
Here's my latest render. I'm not fully satisfied with it yet, but it's close.
Here is the node setup:
Click to enlarge.
It's basically an Anisotropic shader with a little bit of straight gloss, then a very light Fresnel component. I then used a stretched noise texture to mix in a very small amount of diffuse (to make some cracks more pronounced) and ...
Light code gets promising results already.I made an example with rigid body meshes instead of particles. Spherical particle will be easy to detect as well since a collision is defined by their distance.
A rigid body simulation.
The simulation after executing the script.
from mathutils.bvhtree import BVHTree
The RGB values in Blender use a linear color model while the Hex values use gamma corrected non-linear color model.
To convert between these two, you would have to manually do the gamma calculations using the transfer function of your color profile, wich is set in the Color Management section of your Scene – set to sRGB by default.
The excact conversion is ...
It's easy to demonstrate this effect in Blender. Cycles operates in RGB-only mode. It cannot simulate any colors in the visible light spectrum except for red, green, and blue.
This isn't correct.
The reference space primaries are determined by the colour management system. In theory, any reference space primaries within, or even beyond, the spectral locus ...
Actually, I figured it out shortly after posting the question.
Instead of using:
I needed to use:
So the final solution was:
activeObject = bpy.context.active_object #Set active object to variable
mat = bpy.data.materials.new(name="MaterialName") #set new material to variable
The False Color view transform is defined in the filmic_false_color.spi3d and referenced by the OCIO configuration in config.ocio. In order to add custom 3D lookup tables as new view transforms, they have to be stored in the .spi3d format and the config.ocio has to be modified to references these new files.
Update 2020-02-17: The re-write of the tool is ...
CMYK and RGB are relative colour spaces, and as a result, individual values mean nothing. In RGB's case, it means the intensity of three lights, a white point colour, and a transfer function which are not specified by the values alone. In CMYK's case, it means four (or more) arbitrary ink colours as well as paper stock and illuminant.
Taken in isolation ...
You can't, not without adding a whole different reference space, and you don't actually want to. The explanation for this is very long winded, and I'm willing to explain, but the short version is as follows.
Proper mixing of colour relies on modeling our real-world of physics. That part includes using linearized systems that orbit around the spectral locus. ...
That's because you are using Object's Texture Coordinates, which determine how an image is placed upon the faces, while you need Object's Cartesian Coordinates.
Texture Coordinates usually vary from one point to the other. Referring to the picture below we can see how the gradient is assigning to each point at the same Z the same value. ...
Blender will generally linearize colors when importing 8bit images. Photoshop does not. Normally, Blender's behavior is correct but in this case you are encoding data here, not colors. You can inform Blender of this and disable the de-gamma step by setting your input color space to "linear" or "raw" instead of "sRGB".
Material.copy() is what you want. Also you have to duplicate the object's mesh because materials link to the object's data by default.
scn = bpy.context.scene
obj = bpy.context.active_object
mat = obj.active_material
mesh = obj.data
dup = bpy.data.objects.new(obj.name, mesh.copy())
dup.active_material = mat.copy()
Watch your albedos. It doesn't matter if you use pure primaries or highly saturated colours; Filmic will desaturate as things get too intense. High albedo will race those values through the roof quickly, leading to desaturation. As Cegaton wisely said, the old adages are pure rubbish based on a lack of understanding regarding view transforms; feel free to ...
In Cycles a color is just a set of 3 numbers representing the red, blue, and green content of the color. To perform a mathematical operation on a color Cycles splits the color up into its RGB channels, performs the operation on each channel individually, and then combines them back into a Color datatype again.
The Mix RGB node, when set to difference, ...
This is because the math node only deals with single scalar values (note the gray sockets).
See What is the meaning of the color of the node sockets in the node editor?
If you use a node with yellow sockets (Color > MixRGB), it will maintain all the color channels:
I have just created aquick node setup for the animation with Animations Nodes Addon
Basically you put a MBall plane as suggested on the previous answer. Then you pick a MBall and duplicate it wit the instancer node. Then you create a loop with those instance to perform some procedural operations.
Balls are scattered on X and Y via the Randomize vector. To ...
It is possible to do that in Cycles using a Camera Data Node
You must use the output of the View Vector socket, separate it into its components with a Separate XYZ node, then pass its Z component through a Color Ramp node to control what colors you get.
The effect might be hard to see at start because the red color would always be off-camera, but tweaking ...
You can do this easily with animation nodes in the blender 2.80.
Create a number of instances (with deep copy) and place them using the grid distribution node. Then use the same grid points or vectors to sample the texture with Texture Node, which gives you the color of texture at that point of the grid and by changing the scale of the grid points you can ...