Haven
Forums Freshman
Posts: 15
|
|
« on: October 05, 2013, 05:38:29 PM » |
|
Hello, i spent last couple of day playing around in fragmentarium, but unless one can write the code, options there are very limited. i really like the program and thus i was wondering if anybody knows bout some tutorials or other literature that would explain the programming part a little bit. thank you very much!
|
|
|
Logged
|
|
|
|
cKleinhuis
|
|
« Reply #1 on: October 05, 2013, 06:16:51 PM » |
|
hmm, have you checked the "tutorial" examples ? at the end of the day it is GLSL the GPU language of OpenGL http://en.wikipedia.org/wiki/OpenGL_Shading_Language
|
|
« Last Edit: October 05, 2013, 06:23:25 PM by cKleinhuis, Reason: whoopsie, inserted german, corrected to english wiki entry »
|
Logged
|
---
divide and conquer - iterate and rule - chaos is No random!
|
|
|
eiffie
Guest
|
|
« Reply #2 on: October 05, 2013, 08:53:38 PM » |
|
GLSL programming is quite simple if you have every worked with C or javascript. You just have some new helpful datatypes like vec3 to work with 3 floats at once. The link above will get you started. The harder part is understanding distance estimation. A good place to start is Syntopia's blog. (Search for it and go to the beginning.) You only have to write one function in fragmentarium - the DE function. It looks something like this... float DE(vec3 p){ return length(p)-1.0; }
To understand what it is doing imagine that we are shooting a ray from the camera into the scene. We need to know how far we can go before hitting something. The DE function tells us that. We send it the position of the ray (the camera's position to start) and it returns how far we can go before we need to test again. We keep testing and marching forward until the distance is smaller than a pixel. The simple example returns a sphere with radius 1 centered at the origin. To make 2 spheres we use folding... p.x=abs(p.x)-1.0;//think of folding a piece of paper and then moving the origin (translating) return length(p)-1.0; To make fractals all we need is to make an iteration loop and scale as we go. When we scale we need to return a sphere that is scaled by the reciprocal. But probably the most fun way to learn is to mess with the examples and see what happens!
|
|
« Last Edit: October 07, 2013, 09:56:08 AM by Nahee_Enterprises »
|
Logged
|
|
|
|
cKleinhuis
|
|
« Reply #3 on: October 05, 2013, 09:03:02 PM » |
|
i totally neglected that blog, it is a beautiful descriptive blog, all about fragmentarium, browse through it, absolutely fantastic stuff there: http://blog.hvidtfeldts.net/
|
|
|
Logged
|
---
divide and conquer - iterate and rule - chaos is No random!
|
|
|
taurus
|
|
« Reply #4 on: October 06, 2013, 03:39:04 AM » |
|
....all about fragmentarium....
not even close. I'd recommend the syntopia blog to everyone, who's interrested in 3d fractals. Even those, who are unable (and/or uninterrested) in programming get a quick idea, of what is going on, when they're flipping around sliders in m3d. Joking aside, if there is an easy to understand description of the 3d fractal basics, http://blog.hvidtfeldts.net/index.php/2011/06/distance-estimated-3d-fractals-part-i is the place to look for - even for the limited minds like mine.
|
|
« Last Edit: October 07, 2013, 09:58:47 AM by Nahee_Enterprises »
|
Logged
|
when life offers you a lemon, get yourself some salt and tequila!
|
|
|
cKleinhuis
|
|
« Reply #5 on: October 06, 2013, 12:10:03 PM » |
|
right, it is covering much stuff, demo scene is mentioned very often, generative methods in general, and all are fantastic presented,
|
|
|
Logged
|
---
divide and conquer - iterate and rule - chaos is No random!
|
|
|
3dickulus
|
|
« Reply #6 on: October 07, 2013, 12:52:24 AM » |
|
Here's a nice little how-to that has nothing to do with DE or fractal formulas but might be helpful with familiarization on how the different parts of the engine work together, God Ray Octo Bulb.
|
|
« Last Edit: October 07, 2013, 09:59:52 AM by Nahee_Enterprises »
|
Logged
|
|
|
|
Haven
Forums Freshman
Posts: 15
|
|
« Reply #7 on: October 07, 2013, 09:38:46 AM » |
|
wow, thank you everybody for responses! gonna check out those links.
|
|
|
Logged
|
|
|
|
Adam Majewski
|
|
« Reply #8 on: November 11, 2015, 09:21:54 AM » |
|
|
|
|
Logged
|
|
|
|
cyseal
|
|
« Reply #9 on: February 03, 2016, 01:05:45 PM » |
|
How to instal update of DE-Raytracer in Fragmentarium ? Could you explain me what is Fragmentarium-1.0.20-Qt_5_4_2_MinGW-exe-only and the difference between Fragmentarium-1.0.20-Qt_5_4_2_MinGW-NODLLs .
Could the developers of this program add support to opengl 3.2?
|
|
|
Logged
|
|
|
|
3dickulus
|
|
« Reply #10 on: February 03, 2016, 03:22:55 PM » |
|
1. just change the name @ the #include line in your fragment to whatever raytracer you want, raytracer frags belong in the Examples/Include folder
2. exe-only is just the windows executables with no support files, NODLLs is executables plus support files but no Qt dll files, then there is the complete package that has everything, this is so that you don't have to download 30 megs if you don't need it.
3. Fragmentarium supports whatever your gfx card is capable of, at startup you will see a line in the log window like... This video card supports: OpenGL , 1.1, 1.2, 1.3, 1.4, 1.5, 2.0, 2.1, 3.0, 3.2, 3.3, 4.0, 4.1, 4.2, 4.3
there are 2 exe options that combine to make 4 versions, no-exr does not have support for saving EXR format images nv requires GLv4+
|
|
|
Logged
|
|
|
|
cyseal
|
|
« Reply #11 on: February 13, 2016, 08:50:57 PM » |
|
1. just change the name @ the #include line in your fragment to whatever raytracer you want, raytracer frags belong in the Examples/Include folder
Could you explain to me a bit more ? I'm totally new in this. For some reason, when using Fragmentarium, after awhile my screen goes black. I need to restart the PC. I updated the video drivers but I have old GPU. Did anyone experience black screen ?
|
|
|
Logged
|
|
|
|
3dickulus
|
|
« Reply #12 on: February 13, 2016, 10:30:20 PM » |
|
Could you explain to me a bit more ? I'm totally new in this.
in the Examples/Include folder you will see files with names DE-kn2.frag or DE-Raytracer.frag in the text editor, near the top of the file, there is a line like #include "DE-Raytracer.frag" , you can change this to #include "DE-kn2.frag" I can't explain it any better than that, for the most part you won't have to do this unless you are testing or developing something where you need to see the behavior with different raytracers, or you have a favorite one that you want to use. For some reason, when using Fragmentarium, after awhile my screen goes black. I need to restart the PC. I updated the video drivers but I have old GPU. Did anyone experience black screen ?
if it's the entire screen not just the GL view in Fragmentarium that sounds like an overheating problem, you may have to clean out the fuzz bunnies or upgrade tip: use the smallest view you can tolerate and a small (64x36 or so) tile size when rendering hires images to files
|
|
|
Logged
|
|
|
|
cyseal
|
|
« Reply #13 on: February 19, 2016, 04:57:14 PM » |
|
Thank you. Heating is not the issue. I've updated the new drivers and after the screen goes black it goes back to normal with the message: "your video card driver recovered from an error". Do you know how can I save crash file or where to find the crash file so that I can send it to you ?
3dickulus, could you tell me how to start the implementation of Fragmantarium in Blender as a plugin or a separate renderer? What do I need to have to build it and to write it on Windows?
|
|
|
Logged
|
|
|
|
3dickulus
|
|
« Reply #14 on: February 20, 2016, 01:58:28 AM » |
|
Thank you. Heating is not the issue. I've updated the new drivers and after the screen goes black it goes back to normal with the message: "your video card driver recovered from an error". Do you know how can I save crash file or where to find the crash file so that I can send it to you ?
3dickulus, could you tell me how to start the implementation of Fragmantarium in Blender as a plugin or a separate renderer? What do I need to have to build it and to write it on Windows?
I have no idea about where windows might store a crash file or if it even does this, if it's the videocard driver then I'm even more in the dark regarding details under windows. on linux it dumps to the console if you run it from a console. please don't send me crash dumps, all I need is to be able to follow the steps that lead to the crash and if I can't reproduce it then I can't help. in Blender as a plugin? no idea about blender plugins but if you google "blender glsl" you may find a tutorial that might help you convert a Fragmentarium shader into a blender compatible glsl file. to build Fragmentarium on windows you need... Qt 5.4 sdk MinGW 4.9.1 a little patience, and some familiarity with development environments for doing this kind of stuff, fortunately, when you install Qt5 from the official Qt website http://www.qt.io/download/ you can also choose to install MinGW and the Qt IDE called QtCreator, recommended reading if you are just starting with Qt http://doc.qt.io/qt-5/gettingstarted.html
|
|
|
Logged
|
|
|
|
|