Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2005-08-20 - convert all DerivedMesh map functions to use index basedDaniel Dunbar
mapping (instead of Edit{Vert,Edge,Face} pointers) - dropped convertToDispListMeshMapped (whew, glad of it too) - added DerivedMesh drawMappedFaces function - dropped EM suffix for DerivedMesh functions, it was neither particularly correct nor descriptive - converted test_index_mface to test_index_face that also corrects MCol and TFace. Good thing we had three versions of this routine, you never know when one might burn down. - removed flipnorm_mesh, not used anymore (and was incorrect to boot) - Getting face select to work with modifiers turned out to be much more complicated than expected. Reworked mapping architecture for modifiers - basically elements in a DispListMesh are now required to be stored in an order that corresponds exactly to original ordering. MVert/MEdge/MFace all have a new flag ME_XXX_STEPINDEX that is set on each element that is set on the first derived element of each original element. I can't say the code to follow these requirements for subsurf is particularly transparent, but on the upside it is a reasonably consistent and simple system that is memory efficient and allows keeping the DispListMesh structure. - rewrote mirror modifier to be simpler/conform to new requirements for mapped DispListMesh structure. This also means that mirror interacts much better with incremental subsurf calculation (it used to recalc one entire side on any topology change, now it generally avoids that). - added EM_{init,free}_index_arrays and EM_get_{vert,edge,face}_for_index functions to handle mapping indices back into appropriate EditMesh structures. - bug fix, make edges didn't recalc object data - bug fix, initial image assignment to TFace's didn't recalc object data - new feature, added circle select support for FACESELECT - bug fix, creating new faces in editmode duplicated the TFACE active flag - but there should only be one active tface - bug fix, possible crash when deleting all faces in faceselect mode on mesh with tfaces... Still todo: TFace edge drawing is still not always correct in face mode, in particular with a mirror modifier when mesh has edges (and no preceeding subsurf). Have not yet decided how to deal with this. Best solution is probably to do switch to meshes all having MEdge's, in which case I can get rid of TFace edge flags (and need to recalc modifiers on tface selection change).
2005-07-21Tsk, noob mistake in intrr's radiosity commit (not collecting invisible faces).Martin Poirier
Didn't check pointer, so it crashed if the mesh didn't have TFaces.
2005-07-16Fix radiosity "Collect Meshes" to ignore TFaces set to "Invisible".Alexander Ewering
I hope this doesn't break anything - works fine here.
2005-07-15 - added mesh_get_texspace (should be used instead of direct access)Daniel Dunbar
which calculates texspace on demand if need be. - removed almost all calls to tex_space_mesh There may be a few corner cases where this goes wrong (meshes with vertex keys) but these should get ironed out by coming modifier system.
2005-07-13Armature "XRay mode" now draws nicely with solid too. For it to work, ITon Roosendaal
had to add a new feature to the 3d window, to collect "after draw" objects, which get drawn as last, after a clear of the zbuffer. Same method can be used for nice OpenGL transparent draw, the system is ready for it, do that later. The huge commit is caused by cleaning up globals from struct Global. Many variables were unused or just not needed anymore. Did that to move the ugly G.zbuf to where it belongs, in the View3D space struct. :)
2005-07-12 - add missing includeDaniel Dunbar
2005-07-12Fix "Replace Meshes" in radiosity to actually only replace Meshes, and notAlexander Ewering
also delete lamps, cameras and anything else that was selected in the "Collect Meshes" phase.
2005-07-12 - added missing includeDaniel Dunbar
2005-07-12My Radiosity commit had some code from my base list ordering experiement. ↵Martin Poirier
(It wasn't removed because it didn't use the macros) Caused radio to often say "no vertices" when that was obviously untrue.
2005-07-11This commit fixes radiosity to correctly preserve and subdivide UVMartin Poirier
coordinates. Known problem: Pin status bleeds a bit, so new subdivided UVs around points that were original pinned can end up pinned in the end. Could be fixed, or could just drop pinned status entirely. Also, when gathering meshes, it doesn't add materials twice, so it's harder to bust the 16 materials limit.
2005-03-20 - remove all obsolete inclusions of BLI_winstuff.h (due to recent changes)Daniel Dunbar
NOTE: BLI_winstuff.h was meant to be a wrapper around windows.h to handle undefining various crap that windows.h defines. Platform specific headers should only have to be included in a few places. This reduces the number of inclusions of BLI_winstuff.h to 16 which is a much more reasonable number (than the 144 or whatever it used to be)
2005-03-09big warning hunt commitJean-Luc Peurière
lot of casts, added prototypes, missing includes and some true errors
2004-08-29Added a flush in radiotisitizer tool, to update draw of shooting patchesTon Roosendaal
while it's doing a 'Go'
2004-07-25BPython:Willian Padovani Germano
- new submodule Scene.Radio, for radiosity: still incomplete, but in shape for demos, updated SConscript to include it; - new functions in Window module; - doc updates: adding a todo file and a new start page for our docs: API_intro.py + other updates; - small fix in Ipo.c provided by Damien McGuinnes (thanks!): Nathan has a patch with IPO additions and fixes for this and more, but until it is committed, there's this fix for Ipo.getCurve('LocX'), LocY, Z and QuatW,X,Y,Z too, according to Damien. Other files: - radpreprocess.c: added check for "during_script()" so eventual msgs don't popup during scripts; - drawmesh.c: made a pointer (display list) be checked before accessed, fixes crash in scripts that forget to update display lists for subsurf meshes when a 3d view is in textured view mode. Script: updated bevel_center by Loic Berthe.
2004-06-26Changes in code to allow double sided energy, but it's not possibleTon Roosendaal
to activate it. Added comment in code how to enable it for those who like to play (search for translu) What doesnt work - according to me not satisfying - is fact that radiosity hemicubes alias badly on short distances, so interior light doesn't spread well.
2004-04-21Fix for radio render.Ton Roosendaal
Somewhere after 2.28c I fixed some thing in radio rendering that prevented textures to be applied to radio energy. Now it is a normal 'diffuse' energy again, and multiplied with actual (textured) material color. Small fix: the radiosity steps show up as numbers printed in time-cursor.
2004-04-07bug fix #1127Ton Roosendaal
Quads in radiositizer got normals calculated using 3 vertices only. this can go wrong in occasions... and made blender hang. Used CalcNormFloat4() instead!
2004-03-21 - split the data structures that actually constitute a meshDaniel Dunbar
(MVert,MFace,etc) off into DNA_meshdata_types.h, to isolate areas of source that actually edit mesh *data* vs. areas that just edit mesh object information.
2003-12-24- only cosmetic stuff; result of going over the output of mipspro ccTon Roosendaal
compile round. Wrong prototypes, unused variables, zealot const usage, and in action.c fixed insane & unreadable function call syntax.
2003-12-01- fixed type in printf (radiostity!)Ton Roosendaal
2003-09-27- Bug fixes for radio render (yes, releasing gives more reports!)Ton Roosendaal
1. Rendering with material without radio flag sometimes caused scanline errors. The 'rad' value for rendercore loop wasn't reset in all cases 2. The color didn't truely match the color when using 'radio tool'. Cleaned up a few old lines in rendercore loop... accidentally one calculation was done double. 3. When adding new radiosity block, 'max iterations' is set at 120. this prevents noobies/experiment from going into radio-solving with a long itteration time (it exits at convergence < 0.1)
2003-09-02- fixed crash when you render a scene without emit Material andTon Roosendaal
new Radio render on. crash happened after redraw in 3d window.
2003-09-01So, for the platform managers to check:Ton Roosendaal
- the link order for Blender has changed, the libradiosity.a has to be moved after the librender.a (obviously for a new dependency!). Check blender/source/Makefile - there's a new file: blender/source/radiosity/intern/source/radrender.c Here's what the new code does: Using the core routines of the Radiosity tool, each renderface with 'emit material' and each renderface with 'radio material flag' set will be used to itterate to a global illumination solution. Per face with high energy (emit) little images are rendered (hemicubes) which makes up lookup tables to 'shoot' its energy to other faces. In the end this energy - color - then is directly added to the pixel colors while rendering, Gouraud shaded. Since it's done with renderfaces, it works for all primitives in Blender. What is doesn't do yet: - take into account textured color of faces. Currently it uses the material RGB color for filtering distributed energy. - do some smart pre-subdividing. I don't know yet if this is useful... Right now it means that you'll have to balance the models yourself, to deliver small faces where you want a high accuracy for shadowing. - unified render (is at my todo list) User notes: - per Material you want to have included in radiosity render: set the 'radio' flag. For newly added Materials it is ON by default now. - the Ambient slider in Material controls the amount of radiosity color. - for enabling radiosity rendering, set the F10 "Radio" button. - the Radiosity buttons now only show the relevant radiosity rendering options. Pressing "collect meshes" will show all buttons again. - for meshes, the faces who use Radio material always call the 'autosmooth' routine, this to make sure sharp angles (like corners in a room) do not have shared vertices. For some smooth models (like the raptor example) you might increase the standard smoothing angle from 30 to 45 degree. Technical notes: - I had to expand the renderface and rendervertices for it... shame on me! Faces have one pointer extra, render vertices four floats... - The size of the hemicubes is now based at the boundbox of the entire scene (0.002 of it). This should be more reliable... to be done - I fixed a bug in radiosity render, where sometimes backfaces where lit In general: I'd like everyone to play a bit with this system. It's not easy to get good results with it. A simple "hit and go" isn't there... maybe some good suggestions?
2003-07-20- translated the main radiosity structure commentsTon Roosendaal
2003-07-11* fixed code that tried to restore material links, after radiosity, andTon Roosendaal
when you want a new Mesh. Problem happened when over 16 materials are used for 'collect meshes'. Blender does not support (yet) more than 16. For clarity, I added a warning for the user when this occurs (was bug 370)
2003-04-27More translations of c comments, now also include files!Ton Roosendaal
2003-03-24(re)added path to render.hStefan Gartner
2003-03-24Remove references to obsolete misc libDaniel Dunbar
2003-03-24Update things to use blender_test_break() vs MISC_test_break() andDaniel Dunbar
remove use of blendertimer.h
2002-11-25updated .c files to include:Kent Mein
#ifdef HAVE_CONFIG_H #include <config.h> #endif Just need to finish cpp files now :) Kent -- mein@cs.umn.edu
2002-10-12Initial revisionv2.25Hans Lambermont