Title: On the Curve Post by: Tim Emit on December 08, 2016, 08:09:04 PM On the Curve
(http://nocache-nocookies.digitalgott.com/gallery/19/6383_08_12_16_8_09_04.jpeg) http://www.fractalforums.com/index.php?action=gallery;sa=view;id=19833 If anyone is interested I have been trying to clean out my 2016 backlog of experiments and images onto my facebook page so if you use it then feel free to check out the heaps of stuff on there and as ever ask for any params you like the look of . www.facebook.com/timemit-393093930773750 // Output generated from file: C:/Users/USER/Desktop/Fragmentarium/Examples/Knighty Collection/PseudoKleinian_4D_Quaternion_Julia.frag // Created: Wed Nov 23 19:51:21 2016 #info Knighty's Pseudo Kleinian (Scale 1 JuliaBox + Something) #info Modified by Crist-JRoger 4D Quaternion Julia #info http://www.fractalforums.com/fragmentarium/fragmentarium-an-ide-for-exploring-3d-fractals-and-other-systems-on-the-gpu/msg81393/#msg81393 #include "MathUtils.frag" #include "DE-Kn2cr11.frag" #group 4D Quaternion Julia uniform int jIterations; slider[0,16,100] uniform float jThreshold; slider[0,10,100] uniform vec4 jC; slider[(-1,-1,-1,-1),(0.18,0.88,0.24,0.16),(1,1,1,1)] float DE1(vec3 pos) { vec4 p = vec4(pos, 0.0); vec4 dp = vec4(1.0, 0.0,0.0,0.0); for (int i = 0; i < jIterations; i++) { dp = 2.0* vec4(p.x*dp.x-dot(p.yzw, dp.yzw), p.x*dp.yzw+dp.x*p.yzw+cross(p.yzw, dp.yzw)); p = vec4(p.x*p.x-dot(p.yzw, p.yzw), vec3(2.0*p.x*p.yzw)) + jC; float p2 = dot(p,p); orbitTrap = min(orbitTrap, abs(vec4(p.xyz,p2))); if (p2 > jThreshold) break; } float r = length(p); return 0.5 * r * log(r) / length(dp); } #group PseudoKleinian #define USE_INF_NORM uniform int MI; slider[0,25,100] // Bailout //uniform float Bailout; slider[0,20,1000] uniform float Size; slider[0,1,4] uniform vec3 CSize; slider[(0,0,0),(1,1,1),(4,4,4)] uniform vec3 C; slider[(-4,-4,-4),(0,0,0),(4,4,4)] uniform float TThickness; slider[0,0.01,2] uniform float DEoffset; slider[0,0,0.01] uniform vec3 Offset; slider[(-1,-1,-1),(0,0,0),(1,1,1)] float RoundBox(vec3 p, vec3 csize, float offset) { vec3 di = abs(p) - csize; float k=max(di.x,max(di.y,di.z)); return abs(k*float(k<0.)+ length(max(di,0.0))-offset); } float maxcomp(vec3 a) { return max(a.x,max(a.y,a.z)); } float sdToBox( vec3 p, vec3 b ) { vec3 di = abs(p) - b; float mc = maxcomp(di); return min(mc,length(max(di,0.0))); } float Thingy(vec3 p, float e){ p-=Offset; return (abs(length(p.xy)*p.z)-e) / sqrt(dot(p,p)+abs(e)); } float Thing2(vec3 p){ //Just scale=1 Julia box float DEfactor=1.; vec3 ap=p+1.; for(int i=0;i<MI && ap!=p;i++){ ap=p; p=2.*clamp(p, -CSize, CSize)-p; float r2=dot(p,p); orbitTrap = min(orbitTrap, abs(vec4(p,r2))); float k=max(Size/r2,1.); p*=k;DEfactor*=k; p+=C; orbitTrap = min(orbitTrap, abs(vec4(p,dot(p,p)))); } //Call basic shape and scale its DE //return abs(0.5*Thingy(p,TThickness)/DEfactor-DEoffset); //Alternative shape //return abs(0.5*RoundBox(p, vec3(1.,1.,1.), 1.0)/DEfactor-DEoffset); //Just a plane return abs(0.5*abs((p.z-Offset.z)*DE1(p))/DEfactor-DEoffset); } float DE(vec3 p){ return Thing2(p);//RoundBox(p, CSize, Offset); } #preset OntheCurve FOV = 0.7201087 Eye = -2.556512,-18.73893,-8.636192 Target = -3.839587,-16.37893,-14.67872 Up = -0.2597066,0.245291,0.1509486 Gamma = 0.8654 ToneMapping = 5 Exposure = 1.344033 Brightness = 1 Contrast = 1 Saturation = 1 GaussianWeight = 1 AntiAliasScale = 2 Detail = -3.68141 FudgeFactor = 0.4297812 Dither = 0.0469289 NormalBackStep = 4.379928 NotLocked CamLight = 0.760784,0.870588,1,0.0282486 BaseColor = 1,1,1 OrbitStrength = 0.9817672 X = 0.5,0.6,0.6,0.4896552 Y = 1,0.6,0,0.497931 Z = 0.8,0.78,1,0.7806897 R = 0.4,0.7,1,0.2822636 BackgroundColor = 0.7803922,0.5568627,0.2980392 GradientBackground = 0.3727599 CycleColors = true Cycles = 5.057251 EnableFloor = false NotLocked FloorNormal = 0,0,1 FloorHeight = 0 FloorColor = 1,1,1 FocalPlane = 8.875221 Aperture = 0 InFocusAWidth = 0.9629893 ApertureNbrSides = 7 ApertureRot = 0 ApStarShaped = false Bloom = false BloomIntensity = 0.7761194 BloomPow = 1.425562 MaxRaySteps = 2000 MaxDistance = 20 Specular = 0.1626465 SpecularExp = 16 Reflection = 0.7803922,0.9803922,1 ReflectionsNumber = 2 SpotGlow = true SpotLight = 1,0.8313725,0.4941176,5.756272 LightPos = 2.030812,-0.1960784,1.162465 LightSize = 0.0800836 LightFallOff = 0 LightGlowRad = 0.6193698 LightGlowExp = 1 HardShadow = 0.4431898 ShadowSoft = 0 HF_Fallof = 0.0696016 HF_Const = 0.0145329 HF_Intensity = 0.0412587 HF_Dir = 0,-0.4010989,1 HF_Offset = 3.170391 HF_Color = 0.7960784,1,0.9960784,1.220339 HF_Scatter = 0 HF_Anisotropy = 0,0,0 HF_FogIter = 1 HF_CastShadow = false CloudScale = 1 CloudTops = 1 CloudBase = -1 CloudDensity = 1 CloudRoughness = 1 CloudContrast = 1 CloudColor = 0.65,0.68,0.7 SunLightColor = 0.7,0.5,0.3 UpLock = false DofCorrect = false BloomTaps = 19 BloomStrong = 5.37323 RefineSteps = 15 DetailAO = -0.0532503 coneApertureAO = 0.5 maxIterAO = 20 FudgeAO = 1 AO_ambient = 1.979065 AO_camlight = 1.76257 AO_pointlight = 1.964962 AoCorrect = 0.8745669 AmbiantLight = 1,1,1,0.4592275 ShadowBlur = 0.6019691 perf = false SSS = true sss1 = 0.4516129 sss2 = 0.5 EnCloudsDir = false Clouds_Dir = 0,0,1 CloudFlatness = 0 CloudColor2 = 0.07,0.17,0.24 Cloudvar1 = 0.99 Cloudvar2 = 1 CloudIter = 5 CloudBgMix = 1 jIterations = 2 jThreshold = 9.72028 jC = -0.8064953,0.4465494,-0.4221922,-0.3585927 MI = 99 Size = 0.4453496 CSize = 0.3765348,0.4448175,0.3627622 C = -0.4942606,1.088454,-1.671843 TThickness = 0 DEoffset = 0 Offset = -0.5374056,-1,-0.3919012 #endpreset Title: Re: On the Curve Post by: 3dickulus on December 09, 2016, 04:23:44 AM very intricate, lots to explore there :)
I'm going to put together an "Action Pack" as something for people to play with, it will be a zip file that has a .frag and all of the presets included as thumb.pngs made with Render->Save Screen Shot so you can drag and drop a thumbnail onto the render area and it will read the settings used to create it, Render->Save Screen Shot saves the current settings in the png ;) I'll post it on DA soon :beer: Title: Re: On the Curve Post by: Tim Emit on December 09, 2016, 09:49:32 AM cheers Dick :) .. .. that sounds great ... look forward to testing it out :D
Title: Re: On the Curve Post by: 3dickulus on December 11, 2016, 10:30:27 PM done! http://sta.sh/09uapj9flnq
Nothing fancy, just a frag and a bunch of png thumbs, not intended as finished works, just something to play with ;) Title: Re: On the Curve Post by: Tim Emit on December 15, 2016, 07:53:41 PM thanks.works nicely . I get a few errors on load..could not find: anything relating to flare . will have a play this evening if I can : )
Title: Re: On the Curve Post by: 3dickulus on December 16, 2016, 03:37:26 AM ahh... that would be http://www.fractalforums.com/fragmentarium/adding-to-the-buffershader/msg93234/#msg93234 a "pseudo" lens flare applied in the buffershader frag, the more mathematically inclined might be able to tweak it for a more realistic effect, it was just meant as an example of how to add something to the buffershader... the raytracer and the buffershader are 2 separate programs, the raytracer has been brought to near maximum size with all of the features but the buffershader has a lot of room for coding after effects. |