The RasterImage interface is quite old and it is starting to show. Perhaps an alternative interface that would offer a different approach to raster images should be added. The current RasterImage functionality will be kept unchanged for compatibility reasons, the new interface will have a different name (I am open to suggestions).
Here are some goals for the new interface:
Initial proposal:
RasterImageEx methods and properties
PixelIterator methods and properties
Ooooh, like a shader language for RW, cool!
Now if we could mod an image using OpenGL shaders that would be something.....and SERIOUSLY fast!
I wouldn't go as far . But it is a good idea for a separate plug-in.
hehe, thats alright I never could get my head around that stuff.
But then Ive only tried to learn WebGl shaders and finding good docs on it sux! They all expect you to know normal gl shaders and theres a bunch of differences that just made it hell for me.....the curse of being the perpetual noob...give it another go one day
Awesome Sample accepts floats, but could it have one more parameter, clamp type?
You know, for when the x/y is over width/height, under 0.
The usual 3 would be great, clamp, mirror and wrap.
That would save me a bit of effort.
That should be possible.
Currently, the editor internally supports out-of-canvas content and a background color, which is close to the clamp mode. Basically, it is possible to request pixel at arbitrary coordinates. The future scripting should reflect this.
Sounds pretty cool! But just wondering, would it be possible to add settings to it so one would have the option to work with CMYK color codes instead? (Well, one should add the alpha channel. CYMaK color?) And maybe HSL color (HaLS?)
And may I suggest naming the new interface Painted Reality Interface? (PRI for short? Or the PRInterface? LOL)
There are some ways to work with other color spaces - the Blender object and its MapChannels mode may be of help.
Also, 2 other things were recently discussed, so I am adding them here, so that they are not forgotten: