Revision 5d8cfef by Ton Roosendaal December 6, 2008, 16:22 (GMT) |
2.5 Mainwindow had wrong subwindow rect definition. |
Revision 2b70988 by Campbell Barton December 6, 2008, 13:42 (GMT) |
* Patch from Michael Fox to set the normal angle (was fixed at 80 before) * Fixed another face clipping bug (some artifacts still when using screen aligned faces) * Removed Soften and Warp buttons on the panit panel since they are not used for projection painting * added do_versions to initialize bleed and normal values |
Revision 45cc519 by Joshua Leung December 6, 2008, 10:25 (GMT) |
View2D - Bugfix for grid calculation for 'frames' Grid calculations for frames and seconds were mixed up, meaning that grid was often off. |
Revision afb45ae by Joshua Leung December 6, 2008, 09:25 (GMT) |
View2D: Code cleanup - UI_view2d_status_enforce() This commit *should* bring UI_view2d_status_enforce() (formerly known in pre 2.5 as test_view2d) under control again. I've attempted to reduce the amount of duplicated code here, so hopefully there won't be any nasty bugs that will show up in some of the other views when they are ported. Summary of changes: * Restored V2D_KEEPZOOM flag which I had previously removed, having misunderstood its function. * Fixed bugs with resizing Outliner window * Outliner width is now columns + 1 again. Documented reasons for this (otherwise, stuff gets covered by scrollbars, but we cannot see it) |
Revision 5a5ae82 by Campbell Barton December 6, 2008, 01:21 (GMT) |
WIP fixes, still need to tidy up more. * fix from last commit, threaded memarena wasnt used currectly in one case. (crashing blender) * add a remove doubles and point on line test to face poly clipping function (fixes some cases where buckets are aligned with faces) |
Revision 2746034 by Benoit Bolsee December 5, 2008, 23:13 (GMT) |
BGE bug #17731 fixed: No sleeping Button disables dynamics of an object if it's parented+unparented |
Revision 8a04f03 by Nathan Letwory December 5, 2008, 18:41 (GMT) |
* seems like cur and tot were mixed up, thus preventing panning from working |
Revision 1159ccf by Campbell Barton December 5, 2008, 13:00 (GMT) |
Use MEM_*alloc for some of the main arrays rather then MemArena (was waisting too much memory) |
Revision 4a98983 by Maxime Curioni December 5, 2008, 11:03 (GMT) |
corrected problems using different filters: Freestyle pixels were being fetched outside of the render result rect. Corrected with a test to make sure that the used pixels are valid. |
December 5, 2008, 04:06 (GMT) |
* Added other noise basis types to point density turbulence * Fixed a bug in 'ignoring volumes in AAO' |
Revision 5e60414 by Joshua Leung December 5, 2008, 02:03 (GMT) |
View2D API: Cleaning up API + New Methods * Cleaned up flags defined for View2D, and added some for defining the alignment of the view's data in the 'tot' rect (i.e. which quadrant(s) the view data is allowed to reside in). * These flags are used in the new UI_view2d_totRect_set() function, which sets the new size of the 'tot' rect (i.e. the maximum viewable area). Currently, is only used for Outliner, but channel-lists also require this. * Added API method to reset 'cur' (current viewing region) to 'default' viewing region - UI_view2d_curRect_reset(). Currently, 'keepzoom' is not respected. I'll check on whether this is needed when I recode UI_view2d_status_enforce(), which is badly in need of a cleanup. |
Revision 4ae12f3 by Tamito Kajiyama December 4, 2008, 22:47 (GMT) |
Reverted the changes (in revisions 17517-17519) for the antialiasing based on OpenGL accumulation buffer. |
Revision e4a8a39 by Nathan Letwory December 4, 2008, 20:34 (GMT) |
* silence a warning |
Revision b087c8a by Nathan Letwory December 4, 2008, 20:28 (GMT) |
* rename some view2d defines to be clearer and more in line with the rest of view2d defines. |
Revision 149d231 by Benoit Bolsee December 4, 2008, 16:07 (GMT) |
VideoTexture: new ImageMirror class for easy mirror (and portal) creation The new class VideoTexture.ImageMirror() is available to perform automatic mirror rendering. Constructor: VideoTexture.ImageMirror(scene,observer,mirror,material) scene: reference to the scene that will be rendered. Both observer and mirror must be part of that scene. observer: reference to a game object used as view point for mirror rendering: the scene will be rendered through the mirror as if the active camera was at the observer location. Usually the observer is the active camera but you can use any game obejct. mirror: reference to the mesh object holding the mirror. material: material ID of the mirror texture as returned by VideoTexture.materialID(). The mirror is formed by the polygons mapped to that material. There are no specific methods or attributes. ImageMirror inherits all methods and attributes from ImageRender. You must refresh the parent VideoTexture.Texture object regularly to update the mirror rendering. Guidelines on how to create a working mirror: - Use a texture that is specific to the mirror so that the mirror rendering only appears on the mirror. - The mirror must be planar; the algorithm works well only for planar or quasi planar mirror. For spherical mirror, you will get better results with ImageRender and a camera at the center of the mirror. ImageMirror automatically computes the mirror orientation and position. The mirror doesn't need to be rectangular, it can be circular or take any form provided it is planar. - The mirror up direction must be along the Z axis in local mesh coordinates. If the mirror is not vertical, ImageMirror will compute the up direction as being the projection of the Z axis on the mirror plane. - UV mapping must be set right to get correct mirror rendering: - make a planar projection of the mirror polygons (Unwrap or projection from view) - eventually rotate the projection so that UV up direction corresponds to the mesh Z axis - scale the projection so that the extreme points touch the border of the texture - flip the UV projection horizontally (scale -1 on X axis). This is needed because the mirror texture is rendered from the back of the mirror and thus is reversed from the view point of the observer. Horizontal flip in the UV map restores the correct orientation. Besides these simple rules, the mirror rendering is completely automatic. In particular, you don't need to allocate a camera for the rendering, ImageMirror creates dynamically a camera for that. The reflection is correct even on large angles. The mirror can be a dynamic and moving object, the algorithm always computes the correct camera position based on observer relative position. You don't have to worry about mirror position in the scene: the algorithm automatically computes the camera frustum so that any object behind the mirror is not rendered. Warnings: - observer and mirror are references to game objects. ImageMirror keeps a pointer to them but does not increment the reference count. You must ensure that these game objects are not deleted as long as you refresh() the ImageMirror object. You must release the ImageMirror object before you delete the game objects. To release the ImageMirror object (normally stored in GameLogic), just assign it to None. - Mirror rendering is automatically skipped when the observer is behind the mirror but it is not disabled when the mirror is out of sight of the observer. You should only refresh the mirror when you know that the observer is likely to see it. For example, no need to refresh a car inner mirror when the player is not in the car. Example: contr = GameLogic.getCurrentController() # object holding the mirror mirror = contr.getOwner() scene = GameLogic.getCurrentScene() # observer will be the active camere camera = scene.getObjectList()['OBCamera'] matID = VideoTexture.materialID(mirror, 'IMmirror.png') GameLogic.mirror = VideoTexture.Texture(mirror, matID) GameLogic.mirror.source = VideoTexture.ImageMirror(scene,camera,mirror,matID) # to render the mirror, just call GameLogic.mirror.refresh(True) on each frame. You can download a demo game (with a video file) here: http://home.scarlet.be/~tsi46445/blender/VideoTextureDemo.zip For those who have already downloaded the demo, you can just update the blend file: http://home.scarlet.be/~tsi46445/blender/MirrorTextureDemo.blend |
Revision 3d07c6c by Maxime Curioni December 4, 2008, 10:57 (GMT) |
fixed OSA and tile rendering problems |
Revision 2e517db by Ton Roosendaal December 4, 2008, 09:37 (GMT) |
Small fix for repeat-last-operator: - Context in WM wasn't set for regions yet, done now. So repeat works on per-region ops too. - Debug print was printing the wrong repeated op. (repeat-op could show menu naming the op to repeat) |
Revision cb92e78 by Joshua Leung December 4, 2008, 09:33 (GMT) |
View2D: Scrollbars will now pan the view when MMB-dragged on |
Revision 6fe9a03 by Joshua Leung December 4, 2008, 05:37 (GMT) |
View2D: Scrollbar tweaks * Added back vertical scale markings for vertical scrollbars. Currently untested (until IPO Editor can be put back in). Also, there was a special exception for the Sequencer, which will need to be checked when the time comes too. * Fixed the display of frame numbers in scrollbars. Was caused by error in using an int, where a float was required (this is one place MSVC gives better warnings than GCC). * Outliner horizontal scrollbar now displays a more useful range. The previous range was based on screen width, not width of content. * Outliner horizontal scrollbar now draws with bevel-highlight line again. Was missed out in a previous commit. * Added simple toggle Frames/Seconds operator to TimeLine to test if the View2D code is working right for this. This uses the same hotkey (TKEY) as it's counterpart (with a menu for input) did in previous incarnations of Blender. |
Revision efe8ad8 by Joshua Leung December 4, 2008, 02:01 (GMT) |
View2D: Units on Scrollers (XAxis only) Added back units on scrollbars for anim editors (i.e. Timeline). Vertical scrollbars have yet to be done, but there's no way to test yet. Using markers and current frame indicator (and value) as guides, it is clear that there is still some inaccuracy with the drawing of the grid or the frames/markers are drawn wrong! Will investigate further. |
|
|
|


Master Commits
MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021