User talk:BillW

From POV-Wiki
Jump to navigation Jump to search

Just dropping this all here as an all-inclusive to-do list. Feel free to pick up a project and research or develop it as far as you're able.

Drop-Down Insert Menu						
	Wireframe shapes					
	Basic scene					
	Text					
	Mathematical text					
	axes					
	dependencies					
	Dodecahedron normals					
	Icosahedron normals					
	trace ()					news.povray.org/povray.binaries.tutorials/thread/%3Cweb.51f61e827603294573fc9ebb0%40news.povray.org%3E/
						
						
						
Function graphing					I have a system to graph equations.  I think it might have a few axis-labeling bugs, and needs texting and fixing.
Parametric mesh						Takes parametric equations in x, y, and z and creates quads that are composed of 2 triangles.  Can stepwise cycle through parameters.
Parametric mesh2					Same as above
Read / Write to/from file				basically just want a simple Insert Menu item to drop functional code into a scene	
Isosurface Evaluate					Same as above
Heightfield correcting macro				Newsgroup discussion implies that an Insert Menu for generating properly formed and oriented heightfield from function code would be desirable
Image_map in memory from a function			
Analytical Geometry include				Just would like Friedrich Lohmueller's include files to get cleaned up, formatted, and clearly commented as to purpose of each macro
irid							Good looking iridescence can be tricky to implement, so a sample scene would be extremely helpful.
3-point lighting					Warp had a good tutorial.  Having a macro to set up basic 3-point lighting would help new users a lot
transparent background					This is a very frequently asked question.  Make the fix an Insert Menu item (comments)
Data structures						There are a lot of useful data structures that would make writing scenes so much easier, or even possible
Vector math						There are lots of clever things that can be done with matrices, determinants, vdot and vcross
Products						inner product (dot product), exterior product (wedge product, 2D parallelogram), cross product, triple product, quadruple product
matrices						Need actual mathematical matrix methods to add, multiply, exponentiate, Gaussian elimination, transpose, eigenvalues, trace, ...
Solve geometric problems				nearest point to object, intersections, 	
Scene layout tools					Grids, object locators, special light source diagramming aids
Matrix determinants					for any MxN matrix
Minimum visible sphere radius				How to set up camera so that a sphere completely fills the viewport - extends edge to edge of smallest dimension
Analytical tangents between 2 circles			I have an extensive system to do this and also create a prism from an enclosed path.
Numerical pigment patterns				I have hundreds of equations to make pigment {function {}} patterns
Catenary						It's unclear if we have an easy-to-use macro that is mathematically correct
Full-color pigment					Insert Menu item to make an average pattern rgbft pigment

fn_Identifier - function				For large, complex scenes, sometimes it's easier to have a system of naming identifiers as to type
v_Identifier - vector quantity						
s_Identifier - scalar quantity						
c_Identifier - color						
p_Identifier - Pigment						
t_Identifier - Texture						
l_Identifier - a loop variable: #for (l_Identifier, 0, 10)
o_identifier - object
m_identifier - material
n_identifier - normal
f_identifier - finish

						
Point transforms					rotate () or translate () a "point" (vector)	
eval_pigment ()						Insert Menu item
now ()							Example usages for timing parsing
trace ()						Insert Menu sample code for tracing an object.  Also, tutorial graphic.
orthographic						Insert Menu camera setup with explanation of pixel size in POV-units & "zoom"
macro names						Some macros ought to be renamed for clarity, or have alias macros that call the poorly-named one
Use cases						Certain features or keywords are hard puzzle out the proper syntax and method of usage
Sorting							I have a lot of sorting macros which ought be made into a general-purpose include file
Array macros						Various macros that make using arrays easier and more versatile
srgb							An extensively discussed topic that could use a comprehensive macro for proper color conversion
GitHub repositories					There are various GitHub repositories of code that ought to be implemented as include files, etc.
Wiki accounts						These need to be expanded and made more accessible from the main forum
Barycentric coordinates					These can be exceedingly tricky to implement.  I have a series of macros to perform specific operations in triangular space.
Stacks							Myself and others have useful macros for pushing, popping, inserting, and deleting from a stack.
Pipes							
Normal maps						Functions and macros for generating normal maps
Vector swizzling					These need to be implemented in source, but for now, practical work-arounds need to be invented
Prism macro for 3D vectors				Prisms only use 3d vectors. It's a pain to convert 3D to 2D.  Maybe a macro to automate the process.
reflected ray macro/function				I have a macro to calculate the direction of a ray reflected from a surface
multiple result trace ()				https://news.povray.org/povray.pov4.discussion.general/message/%3Cweb.67ba2b4018d596021f9dae3025979125%40news.povray.org%3E/#%3Cweb.67ba2b4018d596021f9dae3025979125%40news.povray.org%3E

Lerp							I have functions to perform these operations.
invLerp							I believe Ingo Janssen has a collection of interpolation macros as well
Remap							These would be useful for splines, color maps, animations, etc.
convex hull						I have a 2D version that I've implemented, and WFP just posted a lost link to a 3D version
Trig functions						A complete set of inbuilt trig functions or additions to an include file is desirable
bitwise XOR						I have a scene where I perform conversion from decimal to binary to perform XOR, and then convert back
lucida-sans-unicode.ttf					allfont.net/download/lucida-sans-unicode/#download
arial-unicode-ms.ttf					ufonts.com/downloads/197925!474209627
Rendering with ini files				wiki.povray.org/content/Documentation:Unix_Section_5#INI_File_Sections
2-pass radiosity					Simple example scenes should be in the distribution
Monolithic include file					The idea is that it can be complicated to gather and maintain a collection of include files.
							Perhaps there's a mechanism by which a large include file can be parsed and only include the things needed, to conserve memory.
							Maybe there is a convenient way to snip out the parts actually used in the scene to make the scene a standalone file?
Keyword examples					One functioning code example for every keyword would save A LOT of redundant forum posts.	
example scenes						Some things need more than a short usage example.  Specialized scenes ought to be made for complex topics.
convolution						Convolution kernels can be used to blur, find edges, sharpen, and other image processing tasks.
FFT							Fourier transform can be used to process "signals" in graphics, and we should have that capability.
camera location						A feature requested for decades.  Let's get it implemented, or at least a robust, easy to use workaround.
point object						Having a vector that can be processed by rotate, translate, scale, and union would make many tasks easier.
bicubic patch texture interpolation						
no absolute zeros in pigments				This was discussed in the Granite Macro thread with regard to strong lighting, radiosity, etc.
Test Object						I have a POV-Ray logo "test object" like Blender, Grasshopper, Maya, etc have.
Standard render rig for comparisons			Some sort of Cornell Box or other standardized scene with standard environment, lighting, etc.
Thomas Fester posts					
vector object - position + normal			Same as "Point" object
Gray code						Having an implementation of this would make for some interesting experiments and applications
decimal to binary					Conversion macros between number bases
Media macros						Macros to properly set up and implement media would be extremely useful
Ini file SECTIONS					Examples of this useful feature would be great.  Might be useful to extend this to apply to monolithic include file
input file name						Useful feature for rendering include files
use pattern to get B&W pigment				Using pattern {} obviates the need for a color map.
Hilbert curves						
for each macro		(thread)			jr's implementation for this useful looping operation
jr's macros						QuadTree, NonaTree, Tabled, ForEach, others...
pov earth macros					
area light macro					area light setup thread				
comparison of numeric values in functions		(y<0) (x>0) (z=0)	Useful Boolean "triggers"
Fractracer						Sphere "sitting in" and touching all 3 sides of a triangle
lohmueller include translations				Just a general cleanup and translation of comments
Mike Williams function thickening			Useful trick, as well as mirroring function across origin
						
						
Space-Filling Polyhedra					There are a finite number of Polyhedra that can fully tile/fill 3D space.  Have various implementations of these.  
							Vertex and connectivity lists, formulas for filling space via offsets / mod (), dihedral angles, interior angles of faces, etc
Platonic Solids
Archimedean solids
Crstal structures					Unit cells, vertices, connectivity, mathematical formulas
Geometric inversion
Appolonian Gasket
Ford Circles
Pappus chains
Steiner chains
Appolonian Sphere Packing
Random distributions 					
Importance sampling
Bezier spline library					Endless amounts of really useful code
Rational Bezier
b-splines
NURBS						
lat/long conversion to Cartesian & inverse
square to circle mapping
circle to triangle mapping
uv-unwrapping
autocorrelation
complex numbers
spirals
arc lengths
Signed Distance Functions (SDF)
pow (0, 0)
Doyle spirals
Mobius transform
Doyle + Mobius = double Doyle
Complex exponential mapping


						
						
Websites, blogs, code examples:
Tor Olav Kristensen (TOK)						
Jerome Grimbert (Le Forgeron)						
Chris Rath
Stephane Laurent
Quasimondo (art)
Isohedral.ca : Escher-like spiral tilings						
						
						
						
Include files						
	Chris Colefax					
	GALAXY					
	TILE GENERATOR					
	COMPRESSED MESH macro					
	CITY GENERATOR					
	LIQUID SPRAY					
	OBJECT EXPLODER					
	BRUSHED METAL					
	LENS EFFECTS					
	OBJECT BENDER					
	COILS					
	SPIDERWEB	
	LINKS		
						
						
	Rune					
	PARTICLE SYSTEM					
	ELECTRICITY					
	INVERSE KINEMATICS for necks/tentacles					
	ILLUSION					

					
						
/* Image/Bump Map projection methods */	
(I believe that some are as yet unimplemented - BW)				
#define PLANAR_MAP      0						
#define SPHERICAL_MAP   1						
#define CYLINDRICAL_MAP 2						
#define PARABOLIC_MAP   3						
#define HYPERBOLIC_MAP  4						
#define TORUS_MAP       5						
#define PIRIFORM_MAP    6						
#define OLD_MAP         7