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-05-23Second and final commit for this version of the yafray export code ↵Alfredo de Greef
(probably, you never know of course...) Not quite complete, but due to lack of time as good as it will get for now. From the previous commit, forgot to report that basic fog is supported as well. Though because I had not much time to complete the code, it is sort of unfinished, and you will have to tweak parameters specifically for yafray again. It uses only the world horizon color, and only uses the Blender mist distance setting. Textures now support checker clip mode. Fixed possibly all 'duplilist non-empty' errors, though it could hide the real cause of the error. AA is no longer enabled automatically for certain GI quality settings, I thought it best to leave it to the user to decide. SkyDome GI mode now supports cache as well. There is a new option in the GI quality menu 'Use Blender AO settings', which will as it says use the most important AO settings for the skydome parameters. The only AO parameters used are 'Samples', 'Dist' and the random sampling switch, which unlike in Blender you might want to use more often, since the QMC sampling used in yafray can result in visible patterns or a dithering type look. 'Random' is not completely random in yafray however, it is actually jittered (stratified) sampling. Using an occlusion cache, doesn't necessarily mean that you will always get much shorter render times. As with 'full' GI and cache, one problem is bumpmaps, when using bump (or normal) maps, the sampling will be much more dense, using lots more rendertime. As a temporary fix there is a button 'NoBump', but this also has the side effect that in areas of total indirect light (or when used with SkyDome cache) no bumpmapping will be visible. It is therefor best used with some direct light as well. For SkyDome with cache, and strong bumpmapping it might actually not make much difference, since for low distance values you can usually get away with low sample values as well. The entire material panel is now replaced by another panel to show only the parameters important to yafray and add some new ones as well. Since lots of users (especially yafray beginners) have had problems getting certain material aspects right, there is now a material preset menu available to hopefully solve some of the most common "How do I do this? It doesn't work!" questions seen in various forums. Choosing an option from this menu will set the required parameters to default values for yafray, and you can work your way from there to tweak it something you want. Most buttons are copies of the same Blender parameters, with some variations. Just like Blender 'Ray Mirror' enables reflection, 'Ray Transp' enables refraction. You can use 'ZTransp' for materials that have texture maps with alpha channels. Again, same as Blender 'rayMir' sets the amount of reflection. Next button 'frsOfs' however controls fresnel offset, meaning that when this is set to 1, you will get no fresnel effect and when set to 5, reflection is totally determined by fresnel, which is important for realistic glass/metals/etc. IOR is self-explanatory (...), same as Blender. When you have 'Ray Transp' enabled, the blender 'filter' button will appear next to the IOR button. This has the same effect as in Blender. Below that there are some new parameters, 'Ext.Color' sets the extinction color for transparent materials. Usually, in real transparent materials, light loses some of it's energy the further it has to travel through the object. This effect can be simulated with this parameter. Thing to look out for is that it specifies the color which will be REMOVED after traveling through the object. What this means is that say you have a clear white glass sphere, and set the extinction color to a strong blue, the result will be a very yellow object when rendered. Next to the color sliders, there is another set of three parameters, with which you can enable color dispersion for transparent objects. 'Pwr' sets the amount of dispersion, the higher, the more dispersion (the more colorful the result). (For real world materials, this number can be found or derived from data in various glass catalogues) The 'Samples' button below that sets the number of samples used, minimum values are around 7-10, and for very strong dispersion you might need a lot more. As usual, this also means an increase in render time of course, but to simulate realistic materials, you shouldn't really need more than 25 samples. In addition to that, when using low sample numbers, but to still get a good spread of colors, you can enable the jitter button, but this will also add noise. Point/soft(point with shadowbuffer) or sphere lights (light with radius), have a new option to add a simple glow effect, so that lights can be made visible. NOTE: just like spotlight halo's, glow is not visible against the background, there must be another object behind it. Simplest solution is to use a large black shadeless plane behind your scene. The glow intensity can be set with the 'GlowInt' parameter (use very low values around 0.01 even lower), and you can choose from two different types with the 'GlowType' button (which don't look much different, but type 1 is probably better, type 0 faster). And that's it, with apologies for the still missing features and full support in general, but this will have to do for now.
2005-05-02Added baking for softbodies.Ton Roosendaal
Works as follows; - press the 'show bake settings' button (no space left... :) - define start/end frame for bake, and an interval step. The baked result interpolates nicely (Bspline, 4 keys) so in general a step size of 2 or 3 still gives OK results. - Press "BAKE". This will do a full animation + playback. Press ESC if it you don't want it. Once Baked, the BAKE button becomes a FREE BAKE. As reminder the softbody buttons get blocked with error() menu. This saves OK in a file. Renders any frame, including fields and moblur. You can also set a "Timeoffs" for the softbody. And yes, this should be in the NLA once... :) NOTE! With this commit, files saved with the old (first commit) version by Jens Ole won't read the settings back... he stored all sofbody variables in Object, which was moved to a new struct when I did my first commit on SB (over a month ago) Also note that I moved particle deflecting & softbody to a new include.
2005-04-24The zblur plugin (aka as DoF) integrated in render. Compared to patchTon Roosendaal
submitted by Alexander, changes/improvements are: - Moved to new Panel in Scene buttons "Post Effects". Together with other postprocessing options, such as Edge render. It is also not called DoF, this because that's a bit pretending too much then. It's a zblur still! - Made it render Alpha as well - Made it use and deliver float buffers - Huge cleanup of zblur.c code, was very messy. It was alling things in render code without need even (win matrices, transform faces, etc) - Fixed errors in using Z values (zbuffer is signed int) - Removed very weird gamma corrections for front/back half - Tweaked gaussian table, allow variable 'Sigma' to be set for gauss curve - Didn't copy 'auto focus' yet. Use of this is very limited, and gives false expectations, nor works for rendering anims with deamons well. Main issue remains: it's not a very advanced feature... I still doubt very much if this deserves to be released. Spent 2 days on trying to get the key issues solved, with not much results. - gauss filter code has weird side effects on large blur size - having unsharp (blurred) in front also blurs what's around in back. only blurred in back with sharp in front works a little bit - severe aliasing errors... also due the code splitting in 2 halves - doesnt work with unified yet - won't work for halos, spot halos or transparant faces Anyhoo... It was promised to be committed, so now artists can play with it. Who knows it's useful after all, or some fixes can be implemented. :)
2005-04-16Softbody:Ton Roosendaal
- Added browsing for vertex group for "Goal" in SoftBody buttons. - Means the default name "SOFTGOAL" isn't needed anymore - temporally, on file read, the "SOFTGOAL" vertex group is set, if exists - removing vertex group possible too - changed softbody.c code to use this
2005-04-02More softbody goodness;Ton Roosendaal
- Added Softbody effect for Lattices (not too useful yet without vertexgroups though) - Added default vertex "goal" value + button, to be assigned when no vertexgroup exists (or vertex isn't in the group) - Made softmin and softmax work as documented (defining min and max range) - made changes in buttons send 'update' signal to softbody And: - added Nkey Properties to show lattice coordinates
2005-03-31 - removed USE_CCGSUBSURF define (always on now)Daniel Dunbar
- added G.editMesh->derived pointer... idea is to use this for mesh derived from editmesh instead of Mesh->derived (as the derived mesh tends to vary depending on what it came from). This part could be cleaner, also there may problems with it not being invalidated correctly. - And most importantly: In case people were beginning to worry all these edits were just crazy zr stuff, the big point comes about: Incremental subsurf calculation is now enabled. This gives massive speed improvements when editing a large mesh. For the eye-candy happy: try setting G.rt==52 before entering editmode and the edges and vertices (in optimal mode) will switch to displaying visually the age since a region has last been calculated. Lots of fun!
2005-01-13big softbody commitJens Ole Wund
some vertex group , weight painting stuff too /me crosses fingers it does not break anything
2004-12-27Biiig commit! Thanks to 2-3 weeks of cvs freeze...Ton Roosendaal
Render: - New; support for dual CPU render (SDL thread) Currently only works with alternating scanlines, but gives excellent performance. For both normal render as unified implemented. Note the "mutex" locks on z-transp buffer render and imbuf loads. - This has been made possible by major cleanups in render code, especially getting rid of globals (example Tin Tr Tg Tb Ta for textures) or struct OSA or using Materials or Texture data to write to. - Made normal render fully 4x32 floats too, and removed all old optimizes with chars or shorts. - Made normal render and unified render use same code for sky and halo render, giving equal (and better) results for halo render. Old render now also uses PostProcess options (brightness, mul, gamma) - Added option ("FBuf") in F10 Output Panel, this keeps a 4x32 bits buffer after render. Using PostProcess menu you will note an immediate re- display of image too (32 bits RGBA) - Added "Hue" and "Saturation" sliders to PostProcess options - Render module is still not having a "nice" API, but amount of dependencies went down a lot. Next todo: remove abusive "previewrender" code. The last main global in Render (struct Render) now can be re-used for fully controlling a render, to allow multiple "instances" of render to open. - Renderwindow now displays a smal bar on top with the stats, and keeps the stats after render too. Including "spare" page support. Not only easier visible that way, but also to remove the awkward code that was drawing stats in the Info header (extreme slow on some ATIs too) - Cleaned up blendef.h and BKE_utildefines.h, these two had overlapping defines. - I might have forgotten stuff... and will write a nice doc on the architecture!
2004-12-03AddedKent Mein
#define B_UNLINKIMA 1358 Since it was undefined and causing things not to compile. Whoever added it might want to move it but hey its working again for now. ;) Kent
2004-12-01Bug #1909Ton Roosendaal
When choosing "render engine" in Scene Buttons, the newly added or removed Panels didn't invoke a re-alignment event yet. Also added code that inserts new panels as good as possible on their previous locations. This works reliable for 1 new panel, not for more, this because a Panel only stores its old location, not the locations of all Panels in a given configuration. Consider that minor issue...
2004-10-06Version 1.0 of the new OutlinerTon Roosendaal
The outliner is a hierarchical diagram displaying a list of data in Blender and its dependencies. The 'databrowse' doesn't really show it, and Oops is too chaotic still. And most of all, the former two don't offer much tools. After discussions on irc, Matt came with this design proposal; http://mke3.net/blender/interface/layout/outliner/ Which is closely followed for the implementation. The current version only shows all 'library data' in Blender (objects, meshes, ipos, etc) and not the 'direct data' such as vertex groups or NLA. I decided to make it inside the Oopw window, as an option. You can find the option in the "View" pulldown, or directly invoke it with ALT+SHIFT+F9 Here's a quick overview of the Outliner GUI: - Header pulldown has options what it can show (Visible = in current layers) - click on triangle arrow to open/close - press AKEY to open/close all - Leftmouse click on an item activates; and does based on type a couple of extra things: - activates a scene - selects/activates the Object - enters editmode (if clicked on Mesh, Curve, etc) - shows the appropriate Shading buttons (Lamp, Material, Texture) - sets the IpoWindow to the current IPO - activates the Ipo-channel in an Action - Selected and Active objects are drawn in its Theme selection color - SHIFT+click on Object does extend-select - Press DOTkey to get the current active data in center of view TODO; - rightmouse selection; for indicating operations like delete or duplicate - showing more data types - icon (re)design... - lotsof options as described in Matts paper still...
2004-09-14Lot of code... 2 new features:Ton Roosendaal
1) Curve deform http://www.blender3d.org/cms/Curve_Deform.392.0.html Works simple as expected, but keep track of the rotation axis in F7 buttons (Track X Y Z) Only Mesh deform supported now. Code changes: - centralized deformation calls in curve_modifiers() mesh_modifiers() etcetera. Here also other effects can be added like wave. Now the evaluation order is fixed, but should become optional. It also doesnt use the Displist anymore as deform-input. That latter part is unfinished yet. This code also is used for Hooks and will be needed for softbody - made convention stricter that displists are being checked on in drawobject(), this to prevent routines to make new displists recursively (like armature does). Now a freedisplist() is sufficient to signal that a new displaylist should be made. 2) Object Hooks http://www.blender3d.org/cms/Object_Hooks.391.0.html Support for Hooks is added to Mesh, Lattice, Curve and Surface objects. For Armatures this would require some more work & research. Main goal for this feature is to provide quick & simple access to the underlying geometry in Objects on Object level, supporting hierarchies and Ipos etc.
2004-09-06Stretch To constraintMartin Poirier
Read today's meeting minutes for a description. Bjornmose: We'll need some example and screenshots for the dev pages of blender3d.org. If you can do some, neat, if not, I'll do them. Matt, Emilie and Chris: Please review UI addition. Pixel alignement and all that fun stuff has not be overly looked for (though I did some cleaning by adding alignment blocks).
2004-07-25Work on creases editing.Ton Roosendaal
- while editing creases (SHIFT+E) it works like scaling now (towards or away from center selection). - ESC while crease edit now works. (note; doesnt fit in Trans structs...) - button 'draw edges' and 'draw creases' now exclude each other
2004-07-13Added LSCM UV Unwrapping:Brecht Van Lommel
http://www.loria.fr/~levy/Galleries/LSCM/index.html http://www.loria.fr/~levy/Papers/2002/s2002_lscm.pdf Implementation Least Squares Conformal Maps parameterization, based on chapter 2 of: Bruno Levy, Sylvain Petitjean, Nicolas Ray, Jerome Maillot. Least Squares Conformal Maps for Automatic Texture Atlas Generation. In Siggraph 2002, July 2002. Seams: Stored as a flag (ME_SEAM) in the new MEdge struct, these seams define where a mesh will be cut when executing LSCM unwrapping. Seams can be marked and cleared in Edit Mode. Ctrl+EKEY will pop up a menu allowing to Clear or Mark the selected edges as seams. Select Linked in Face Select Mode now only selects linked faces if no seams separate them. So if seams are defined, this will now select the 'face group' defined by the seams. Hotkey is still LKEY. LSCM Unwrap: unwrap UV's by calculating a conformal mapping (preserving local angles). Based on seams, the selected faces will be 'cut'. If multiple 'face groups' are selected, they will be unwrapped separately and packed in the image rectangle in the UV Editor. Packing uses a simple and fast algorithm, only designed to avoid having overlapping faces. LSCM can be found in the Unwrap menu (UKEY), and the UV Calculation panel. Pinning: UV's can be pinned in the UV Editor. When LSCM Unwrap is then executed, these UV's will stay in place, allowing to tweak the solution. PKEY and ALT+PKEY will respectively pin and unpin selected UV's. Face Select Mode Drawing Changes: - Draw Seams option to enable disable drawing of seams - Draw Faces option to enable drawing of selected faces in transparent purple - Draw Hidden Edges option to enable drawing of edges of hidden faces - Draw Edges option to enable drawing of edges of visible faces The colors for these seams, faces and edges are themeable.
2004-07-09Quite a large one this time... but now we have:Ton Roosendaal
Edges in Mesh - adds automatic when you use creases. For other situations; call the void make_edges(Mesh *me) in mesh.c. Of course, once in editmode the edges are automatically recreated. - in F9 buttons you can add/remove edges too - both for Mesh and DisplistMesh, so it speeds up drawing quite some in wireframe - render for edges can't work... edges have no material nor tface nor col.. so here still the faces are rendered in wire Creases in Subsurf - based on the code by Chris McFarlen - main changes is that now edges are used, saving quite some data in file - use SHIFT+E in editmode to set edges-sharpness. values go from 0-1 - in F9 buttons you can set draw-crease mode. It draws now blended from wire color to edge-select color (as provided in Theme) Known issue: setting sharpness on 1 cube (subdiv 2) gives weird results with some values... Chris, can you check? Further; code cleanups, changing 0 in NULL when needed, no warnings, etc etc
2004-06-30NEW: Ramp shades for diffuse and specularTon Roosendaal
http://www.blender3d.org/cms/Ramp_Shaders.348.0.html Material color and specular now can be defined by a Colorband. The actual color then is defined during shading based on: - shade value (like dotproduct) - energy value (dot product plus light) - normal - result of all shading (useful for adding stuff in the end) Special request from [A]ndy! :)
2004-06-26The revised patch from Leon for new particle effects.Ton Roosendaal
New is that objects can have a force field, and Meshes can even deflect (collide) particles. This is in a new sub-menu in Object buttons F7 The full instructions where on the web, Leon mailed it me and I will put it in CMS tomorrow. For those who like to play with it now, here are demo files: http://download.blender.org/demo/test/ Quite some changes where in the integration though... so previous created particle deflectors will not work. Changes to mention now are: - gravity is renamed to 'force field' - force field and deflector options are in Object now, not in Mesh - the options also have its own struct, doesnt add to Object by default - force fields are possible for all object types, but only work on center. So empty objects are typical for it. Work to do: - add draw method in 3d win to denote forcefield objects - check on the UI (panel with different size?) - add 'recalc' button in deflector panel
2004-04-06Bug #1003Ton Roosendaal
Using Nkey in 3d window, you could create a parent-loop, which hangs Blender. Added here that it checks loops, as for normal CTRL+P parenting.
2004-04-05New UV Calculation panel and code. The uv mapping function was split up intoBrecht Van Lommel
multiple functions and partially recoded. Because now all the uv mapping settings are accessible throught the panel, no popus will be shown when pressing 'U' to unwrap faces in face select mode. Also From Window to Cylinder and From Window to Shpere became obsolete, as you can set this in the new panel. The panel contains buttons for all the existing uv mapping modes, and the following settings: - Cube size: For Cubical unwrapping. - Radius: Radius for Cylindrical unwrapping. - View Aligns Face, View Aligns Top, Align to Object: For Cylinder and Shpere. Respectively means you are in front of the Cylinder/Sphere, look through the Cylinder, or use the object rotation to determine how the cylinder is positioned (old Cylindrical unwrapping). - Polar XZ, Polar XY: With 'View Aligns Top' enabled, defines at which polar you are looking. - No Edges, Draw Edges, All Edges: Draw no edges, draw edges z-buffered on top, draw all edges, without depth test. All credits for this part (and also at least half of the other UV editor improvements) go to Jens Ole Wund aka "bjornmose".
2004-03-23[GameEngine] Commit all Kester's changes made to the gameengine to restore ↵Nathan Letwory
2.25 like physics. [SCons] Build with Solid as default when enabling the gameengine in the build process [SCons] Build solid and qhull from the extern directory and link statically against them That was about it. There are a few things that needs double checking: * Makefiles * Projectfiles * All the other systems than Linux and Windows on which the build (with scons) has been successfully tested.
2003-12-29Area lights and more...Ton Roosendaal
- New lamp type added "Area". This uses the radiosity formula (Stoke) to calculate the amount of energy which is received from a plane. Result is very nice local light, which nicely spreads out. - Area lamps have a 'gamma' option to control the light spread - Area lamp builtin sizes: square, rect, cube & box. Only first 2 are implemented. Set a type, and define area size - Button area size won't affect the amount of energy. But scaling the lamp in 3d window will do. This is to cover the case when you scale an entire scene, the light then will remain identical If you just want to change area lamp size, use buttons when you dont want to make the scene too bright or too dark - Since area lights realistically are sensitive for distance (quadratic), the effect it has is quickly too much, or too less. For this the "Dist" value in Lamp can be used. Set it at Dist=10 to have reasonable light on distance 10 Blender units (assumed you didnt scale lamp object). - I tried square sized specularity, but this looked totally weird. Not committed - Plan is to extend area light with 3d dimensions, boxes and cubes. - Note that area light is one-sided, towards negative Z. I need to design a nice drawing method for it. Area Shadow - Since there are a lot of variables associated with soft shadow, they now only are available for Area lights. Allowing spot & normal lamp to have soft shadow is possible though, but will require a reorganisation of the Lamp buttons. Is a point of research & feedback still. - Apart from area size, you now can individually set amount of samples in X and Y direction (for area lamp type 'Rect'). For box type area lamp, this will become 3 dimensions - Area shadows have four options: "Clip circle" : only uses a circular shape of samples, gives smoother results "Dither" : use a 2x2 dither mask "Jitter" : applys a pseudo-random offset to samples "Umbra" : extra emphasis on area that's fully in shadow. Raytrace speedup - improved filling in faces in Octree. Large faces occupied too many nodes - added a coherence check; rays fired sequentially that begin and end in same octree nodes, and that don't intersect, are quickly rejected - rendering shadow scenes benefits from this 20-40%. My statue test monkey file now renders in 19 seconds (was 30). Plus: - adjusted specular max to 511, and made sure Blinn spec has again this incredible small spec size - for UI rounded theme: the color "button" displayed RGB color too dark - fixed countall() function, to also include Subsurf totals - removed setting the 'near' clipping for pressing dot-key numpad - when you press the buttons-window icon for 'Shading Context' the context automaticilly switches as with F5 hotkey Please be warned that this is not a release... settings in files might not work as it did, nor guaranteed to work when we do a release. :)
2003-12-16Another commit for raytracing, now with glass refraction & fresnel!Ton Roosendaal
Changelog: - enable refraction with button "Ray Transp" in Material buttons. - set "Angular Index" value for amount of refraction. - use the "Alpha" value to define transparency. - remember to set a higher "Depth" too... glass can bounce quite some more than expected. - for correct refraction, 3D models MUST have normals pointing in the right direction (consistently pointing outside). - refraction 'sees' the thickness of glass based on what you model. So make for realistic glass both sides of a surface. - I needed to do some rewriting for correct mirroring/refraction, especially to prevent specularity being blended away. Solved this with localizing shading results in the rendercore.c. Now specularity correctly is added, and reduces the 'mirror' value. - Localizing more parts of the render code is being planned. The old render heavily relies on struct Render and struct Osa to store globals. For scanline render no problem, but recursive raytracing dislikes that. - done test with gamma-corrected summation of colors during tracing, is commented out still. But this will give more balanced reflections. Now dark reflections that are reflected in a bright surface seem incorrect. - Introduced 'Fresnel' effect for Mirror and Transparency. This influences the amount of mirror/transparency based at viewing angle. Next to a new Fresnel slider, also a 'falloff' button has been added to define the way it spreads. - Fresnel also works for Ztransp rendering - created new Panel for Raytrace options I have to evaluate still where it all should be logically located. - material preview shows fake reflection and fake refraction as well.
2003-11-27- forgot a define...Ton Roosendaal
2003-10-28- added buttons for NKEY menu editmode curve, nurbs, armatureTon Roosendaal
- same for PoseMode
2003-10-28- fixed bug in wrong event code, causing some plugin buttons not workingTon Roosendaal
- added redraw events to plugin buttons, to show updates better
2003-10-28Fixing loose ends:Ton Roosendaal
- nkey menu for buttonswindow (hex values) couldnt be restored yet, is for next release - replaced Nkey in IpoWindow with Panel, this now displays the buttons that were formerly in 'anim buttons' as well; to view the boundbox values of all visible curves, and adjust it. - the new panel also has the 'set speed' option, fixed stuff in it and added better errorwarning... still not a very well coded tool!
2003-10-23- added Panel for 'anim playback settings'Ton Roosendaal
- removed draw rect from avi coded settings (should become label but) - changing texture settings, now also updates lamp/material/world preview when thats open
2003-10-21Constraint stuff from tuhopuu including (but probably not limited too):Martin Poirier
Axis options for TrackTo LockTrack FollowPath Auto creation of TrackTo constraint from Ctrl-T (old track still an option) Auto creation of FollowPath when parenting to path (Normal parent still an option) Backward compatibility stuff to convert the per object axis settings to per constraint when a Track constraint is present. Function to convert old track to constraint (commented out) Revamped the constraints interface with Matt's work from tuhopuu and the stuff we were discussing earlier. -------------------- For coders: unique_constraint_name and *new_constraint_data moved to the kernel (constraint.c) new Projf function in arithb gives the projection of a vector on another vector add_new_constraint now takes a constraint type (int) parameter add_constraint_to_object(bConstraint *con, Object *ob) to link a constraint to an object add_constraint_to_client(bConstraint *con) to link constraint to current client (object or bone) add_influence_key_to_constraint (bConstraint *con) to (eventually) add a keyframe to the influence IPO of a constraint
2003-10-18- added Theme for File WindowTon Roosendaal
- made grid drawing using the main theme color - was annoyed with the primitive grid... so coded something that allows zooming in and out a 100fold without losing gridlines - brought back 'NKEY' for mesh editmode - added to this a 'median' option; when more vertices selected you see the average coordinate. works nice when inputting values as well (todo: make this for other editmodes) - renamed the 'NKEY' panel to 'Transform Properties', also fixed in pulldown menu. I am off for the rest of the day. More committing fun tomorrow! -Ton-
2003-10-17- The basic layer for Themes in place!Ton Roosendaal
- currently only implemented for 3d window - create as many themes you like, and name them - default theme is not editable, and always will be defined at startup (initTheme) - saves in .B.blend - themes for spaces can become local too, so you can set individual 3d windows at theme 'Maya' or so. (to be implemented) - it uses alpha as well...! API: This doesnt use the old method with BFCOLORID blahblah. The API is copied from OpenGL conventions (naming) as much as possible: - void BIF_ThemeColor(ScrArea *sa, int colorid) sets a color... id's are in BIF_resources.h (TH_GRID, TH_WIRE, etc) - void BIF_ThemeColorShade(ScrArea *sa, int colorid, int offset) sets a color with offset, no more weird COLORSHADE_LGREY stuff - void BIF_GetThemeColor3fv(ScrArea *sa, int colorid, float *col) like opengl, this gives you in *col the three rgb values - void BIF_GetThemeColor4ubv(ScrArea *sa, int colorid, char *col) or the one to get 4 bytes ThemeColor calls for globals (UI etc) can also call NULL for *sa... this is to be implemented still. Next step: cleaning up interface.c for all weird colorcalls.
2003-10-15- More code for handling Panels in other windows.Ton Roosendaal
Added the 'Nkey' object menu as Panel now. Live updates, whoohoo! closing them, minimizing, etc will follow. first bring back vertex selection :)
2003-10-14- converted constraint buttons, they're a Panel in Object main menuTon Roosendaal
- converted sound buttons, part of Scene - special request Matt: headers of windows 2 pixels higher! (test) - special request Stefano: icons instead of menu for buttons-header - 'data browse' buttons now almost all in buttonswindow. - almost all buttons have been panelized now. next stage: cleaning up usage of color in Blender, to allow presests!
2003-10-13- experiment: changed drawing style of Panels to minimal and fullyTon Roosendaal
transparant. - converted the Texture buttons, they're nice too!
2003-10-13- restored scriptlink buttonsTon Roosendaal
i tried to find place for it in the other menus, like material, object, camera, etc. But thats hard... now it's just one nice Panel, without the idiot headerbuttons icons! - changed drawing of 'tabbed' Panels. The old method takes too much space. hint from xype! Dragging tabbed Panels can be done with the right hand circle. designers are welcom to tweak this. main reason: dragging is not meant to be happening a lot... pressing tabs is more important.
2003-10-12- added radiobuttonsTon Roosendaal
- cleaned unused calls and defines
2003-10-12- Converted lamp buttons and world buttons, they're pretty!Ton Roosendaal
- menu auto open now is user preset, including 2 thresholds you can set - hilites of pulldown menus were not cleared, fixed - changed F4 key to logic. F5 will show lamp buttons, when lamp active - in 'shader context' buttons, clicking camera will show world - Converted lamp buttons and world buttons, they're pretty! - menu auto open now is user preset, including 2 thresholds you can set - hilites of pulldown menus were not cleared, fixed - changed F4 key to logic. F5 will show lamp buttons, when lamp active - in 'shader context' buttons, clicking camera will show world
2003-10-11- added method to have a preview render in panelTon Roosendaal
- increased size of preview from 100 to 125 pix :) - put back header buttons for databrowse, but they need to move to buttonswindow itself
2003-10-10Another huge commit!!!Ton Roosendaal
First, check on the new files, which are listed below. The new butspace.h is a local include, only to be used for the buttons drawn in the buttonswindow. - editbuts, animbuts, gamebuts, displaybuts, paintbuts, work now - i quite completely reorganized it, it's now nicely telling you what context it is in - sorting error in panel align fixed (tabs were flipping) - align works correctly automatic when you click around in Blender - editsca.c renamed to buttons_logic.h - button names are truncated from the right for allmost all buttons (except text buttons and number buttons) - while dragging panels, you cannot move them outside window anymore And of course fixed loads of little bugs I encountered while testing it all. This is a version I really need good test & feedback for. Next step: restoring material/lamp/texture/world