I don't know much about the Open Shading Language, but I need to know if it can do a few things before I decide to spend the time to learn it.
- Can OSL manipulate rays that hit surfaces? Such as: change ray colors, reflect, refract, delete it
- Can it also get ray data? Such as: where it came from, its source, direction, and intensity.
- Can it emit rays from a surface? I know that the default Cycles emission shader is written in SVM, but would it be possible make a similar shader in OSL?