Thank you very much for the reply. " Firstly, you can remove all the parenthesis from your equation since there isn't any factorisation. By doing this, you can also cumulate all additions of constants, to obtain what looks like a multiplication between a vector (the orbit coordinate) and a matrix (your parameters), like so: " This means remove the overkill of brackets? I agree It works as well both ways, But I prefer the brackets to remind me which order its doing it in. " Also, If this is your original code, you must make sure that the orbit coordinate (x#, y# and z# in your case) is constant thorough the calculation. In the equation for y#, the value of x# is different to what it was in the first equation, the same goes for z# equation. You should write: x1# = x0# * v#( 0) + y0# ... y1# = x0# * v#( 6) + y0# ... z1# = x0# * v#(12) + y0# ... x0# = x1# y0# = y1# z0# = z1# " I changed this for n# = 1 to 10000 x# = sin(((x# * v#(0)) + v#(1)) + ((y# * v#(2)) + v#(3)) + ((z# * v#(4)) + v#(5))) y# = sin(((x# * v#(6)) + v#(7)) + ((y# * v#(8)) + v#(9)) + ((z# * v#(10)) + v#(11))) z# = sin(((x# * v#(12)) + v#(13)) + ((y# * v#(14)) + v#(15)) + ((z# * v#(16)) + v#(17))) ECT ... next For this for n# = 1 to 10000 x2# = sin(((x# * v#(0)) + v#(1)) + ((y# * v#(2)) + v#(3)) + ((z# * v#(4)) + v#(5))) y2# = sin(((x# * v#(6)) + v#(7)) + ((y# * v#(8)) + v#(9)) + ((z# * v#(10)) + v#(11))) z2# = sin(((x# * v#(12)) + v#(13)) + ((y# * v#(14)) + v#(15)) + ((z# * v#(16)) + v#(17))) x# = x2# y# = y2# z# = z2# ECT ... next I think that's what you mean I understand that was a problem It seams to now make nicer shapes " Secondly, rather than plotting in a texture, why not using OpenGL drawing buffer? You won't get a floating point precision, but you will be able to make larger renders and if you tweak the configuration properly you can obtain a decent result. It is a standard approach and will have more chance to work. " Coz I don't really understand OpenGL enough I modified an example program to get this to work I'm also using my own equation for perspective insted of getting OpenGL to do it for me. " const height = 768 ' Must be a power of 2 Not a power of 2! :-) " Oh yeah My bodged fix for that is to replace the line with this const height = 768 ' Can be any Integer Thank you very much. I am *SO grateful* *:¬)* Feel free to use my attractor in the next chaoscope.