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
2009-02-192.5Ton Roosendaal
Assorted smaller fixes: - Fix: modal keymaps for editmode in view3d were not set again when you copy areas or go fullscreen. - Improved "redo last op" (F6) to search back in history for a redoable operator. Operator also used wrong pupmenu type. - On creating new FCurve editor, the channel rainbow colors are set correct. - EditMesh: fixed code for Spin/Screw, correct props, init and error reporting. (Spin hotkey ALT+R temporary) - recompiled all to check for uninitialized variable warnings. (compile flag should be -O for this). Fixed some proto's.
2009-02-102.5Ton Roosendaal
Made GE compile again
2009-01-262.50: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender ↵Brecht Van Lommel
-r17853:HEAD
2009-01-192.5Ton Roosendaal
View3D has been split now in a local part (RegionView3D) and a per-area part (old View3D). Currently local is: - view transform - camera zoom/offset - gpencil (todo) - custom clipping planes Rest is in Area still, like active camera, draw type, layers, localview, custom centers, around-settings, transform widget, gridlines, and so on (mostly stuff as available in header). To see it work; also added new feature for region split, press SHIFT+ALT+CTRL+S for four-split. The idea is to make a preset 4-split, configured to stick to top/right/front views for three views. Another cool idea to explore is to then box-clip all drawing based on these 3 views. Note about the code: - currently view3d still stores some depricated settings, to convert from older files. Not all settings are copied over though, like custom clip planes or the 'lock view to object'. - since some view3d ops are now on area level, the operators for it should keep track of that. Bugfix in transform: quat initialize in operator-invoke missed one zero. Als brought back GE to compile for missing Ipos and channels.
2009-01-05Yeah, and then the game engine too!Ton Roosendaal
2009-01-042.5Ton Roosendaal
Think global, act local! The old favorite G.scene gone! Man... that took almost 2 days. Also removed G.curscreen and G.edbo. Not everything could get solved; here's some notes. - modifiers now store current scene in ModifierData. This is not meant for permanent, but it can probably stick there until we cleaned the anim system and depsgraph to cope better with timing issues. - Game engine G.scene should become an argument for staring it. Didn't solve this yet. - Texture nodes should get scene cfra, but the current implementation is too tightly wrapped to do it easily.
2008-12-252.5 / SCons / BGENathan Letwory
* this should bring back BGE with scons building. Tested on scons/msvc, will test scons/gcc in a bit NOTE: this is not WITH_BF_PLAYER yet.
2008-12-252.5 BGENathan Letwory
* dna property types had define names renamed for RNA, do that here too.
2008-12-192.5: globals cleanupBrecht Van Lommel
* G.version removed, use BLENDER_VERSION * G.order removed, ENDIAN_ORDER * G.vd, G.sipo, G.buts, G.sima, .. removed. * G.qual removed * G.simulf removed (was unused in 2.4x) * error() and some other unused stubs removed
2008-12-192.5: Change blenloader module to use the Report system for reporting errors.Brecht Van Lommel
2008-12-142.50: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender ↵Brecht Van Lommel
-r17434:HEAD
2008-12-12started whiping cmake into shape for 2.5 still need to figure outKent Mein
the rna stuff but its close. Need to get it working for blender then copy over same to game engine. Kent
2008-12-12VideoTexture.ImageMirror: if the mirror is horizontal in mesh coord, take ↵Benoit Bolsee
the Y axis as the up direction for the UV map. If the mirror is not perfectly vertical(horizontal), the projection of the Z(Y) axis on the mirror plane is the mirror Up direction.
2008-12-09ImageMirror: add clip attribute to limit clipping distance of mirror renderingBenoit Bolsee
2008-12-09patch from Mitchell StokesCampbell Barton
#18045] [patch] A patch that exposes the rest of the motion functions of KX_GameObject to Python. *applyForce => setForce *applyTorque => setTorque *applyRotation => setDRot *applyMovement => setDLoc
2008-12-06BGE bug #17731 fixed: No sleeping Button disables dynamics of an object if ↵Benoit Bolsee
it's parented+unparented
2008-12-04VideoTexture: new ImageMirror class for easy mirror (and portal) creationBenoit Bolsee
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
2008-11-26VideoTexture: new ImageRender class for Render To TextureBenoit Bolsee
The new class VideoTexture.ImageRender() is available to perform render to texture in the GE. Constructor: VideoTexture.ImageRender(scene,cam) cam : camera object that will be used for the render. It must be an inactive camera. scene: reference to the scene that will be rendered. The camera must be part of that scene. Returns an object that can be used as a source of a VideoTexture.Texture object Methods: none Attributes: background: 4-tuple representing the background color of the rendering as RGBA color components, each component being an integer between 0 and 255. Default value = [0,0,255,255] (=saturated blue) Note: athough the alpha component can be specified, it is not supported at the moment, the alpha channel of the rendered texture will always be 255. You can however introduce an alpha channel by appending a FilterBlueScreen() filter, it will set the alpha to 0 (transparent) on all pixels that were not rendered. capsize: 2-tuple representing the size of the render area as [x,y] number of pixels. Default value = largest rectangle with power of 2 dimensions that fits in the canvas You may want to reduce the render area to increase performance. For example, a render area of [256,128] is probably sufficient to implement a car inner mirror. For best performance, use power of 2 dimensions and don't set any filter: this allows direct transfer between the GPU frame buffer and texture memory without going through the host. alpha: Boolean indicating if the render alpha channel should be copied to the texture. Default value: False Experimental, do not use. whole: Boolean indicating if the entire canvas should be used for the rendering. Default value: False Note: There is no reason to set this attribute to True: the rendering will in any case be scaled down to the largest rectangle with power of 2 dimensions before transfering to the texture. Attributes inherited from the ImageBase class: image : image binary data, read-only size : [x,y] size of the texture, read-only scale : set to True for fast scale down in case the render area dimensions are not power of 2 flip : set to True for vertical flip. filter: set a post-processing filter on the render. Notes: * Aspect Ratio For consistent results in Blender and Blenderplayer, the same aspect ratio used by Blender to draw the camera viewport (Scene(F10)->Format tab->Size X/Size Y) is also used during the rendering. You can control the portion of the scene that will be rendered by "looking through the camera": the zone inside the outer dotted rectangle will be rendered to the texture. In order to reproduce the scene without X/Y distortion, you must apply the texture on an object or portion of object that has the same aspect ratio. * Order of rendering The rendereing is performed when you call the refresh() method of the parent Texture object. This happens outside the normal frame rendering and will have no effect on it. However, if you want to use ImageViewport and ImageRender at the same time, be sure to refresh the viewport texture before the render texture because the latter will destroy the frame buffer that is used by the former to update the texture. * Scene status The meshes are not updated during the render to texture: the rendered texture is one frame late to the rendered frame with regards to mesh deformation. * Example: cont = GameLogic.getCurrentController() # object that receives the texture obj = contr.getOwner() scene = GameLogic.getCurrentScene() # camera used for the render tvcam = scene.getObjectList()['OBtvcam'] # assume obj has some faces UV assigned to tv.png matID = VideoTexture.materialID(obj, 'IMtv.png') GameLogic.tv = VideoTexture.Texture(obj, matID) GameLogic.tv.source = VideoTexture.ImageRender(scene,tvcam) GameLogic.tv.source.capsize = [256,256] # to render the texture, just call GameLogic.tv.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/VideoTextureDemo.blend
2008-11-26BGE update: helper functions for VideoTexture render to texture feature.Benoit Bolsee
2008-11-26BGE bug fix: culling algorithm didn't used the correct camera.Benoit Bolsee
2008-11-24patch #8583: Add support for gcc on irixStefan Gartner
to compile blender with gcc on IRIX, IRIX_USE_GCC needs to be set to true in user-def.mk. Other changes related to irix: * compile solid from extern/ * don't build plugins (yet) with "make release" when using gcc (the shell script used assumes MIPSpro is installed) * use statvfs instead of statfs on irix, like done on solaris * use external libs from $(LCGDIR) instead of /usr/freeware * use glew header files from $(LCGDIR)/glew instead of the ones installed on the system (this applies to other platforms as well) * ffmpeg support currently is disabled on irix
2008-11-17Fix compilation on OS XMartin Poirier
Patch by dfelinto
2008-11-172.5: patch to comment out some more bad level calls in the game engine,Brecht Van Lommel
apparently msvc is more strict here, provided by Jean-Michel Soler.
2008-11-162.5 branch: Makefile for videotexture pointed to wrong include path (BIF_gl.h)Ton Roosendaal
2008-11-1517973Patch by dfelinto, and also fixed a bug in 2d-filtersHamed Zaghaghi
2008-11-13Merge of trunk into blender 2.5:Brecht Van Lommel
svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r12987:17416 Issues: * GHOST/X11 had conflicting changes. Some code was added in 2.5, which was later added in trunk also, but reverted partially, specifically revision 16683. I have left out this reversion in the 2.5 branch since I think it is needed there. http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=16683 * Scons had various conflicting changes, I decided to go with trunk version for everything except priorities and some library renaming. * In creator.c, there were various fixes and fixes for fixes related to the -w -W and -p options. In 2.5 -w and -W is not coded yet, and -p is done differently. Since this is changed so much, and I don't think those fixes would be needed in 2.5, I've left them out. * Also in creator.c: there was code for a python bugfix where the screen was not initialized when running with -P. The code that initializes the screen there I had to disable, that can't work in 2.5 anymore but left it commented as a reminder. Further I had to disable some new function calls. using src/ and python/, as was done already in this branch, disabled function calls: * bpath.c: error reporting * BME_conversions.c: editmesh conversion functions. * SHD_dynamic: disabled almost completely, there is no python/. * KX_PythonInit.cpp and Ketsji/ build files: Mathutils is not there, disabled. * text.c: clipboard copy call. * object.c: OB_SUPPORT_MATERIAL. * DerivedMesh.c and subsurf_ccg, stipple_quarttone. Still to be done: * Go over files and functions that were moved to a different location but could still use changes that were done in trunk.
2008-11-11Adjusted scons files so disabling quicktime, python and sdl also removes ↵Campbell Barton
their includes when building. writefile.c had usless include.
2008-11-11VideoTexture: support VideoTexture in blenderplayerBenoit Bolsee
2008-11-10VideoTexture: Preserve alpha channel if present in video, images and ↵Benoit Bolsee
sequences. Better detection of end of video.
2008-11-07=== SCons ===Nathan Letwory
* merge the recent scons changes from trunk, so this means that the same rules now apply: - scons-local available - platform default configs updated - check your user-config.py if you have made a full copy of default config Note: BGE and blenderplayer still not working, but that is normal ;) (so turn them off!)
2008-11-07VideoTexture: VideoTexture.materialID() can now take texture image name.Benoit Bolsee
You can specify a image name (starting with 'IM') instead of a material name in VideoTexture.materialID() and return the material ID matching this texture. The advantage of this method is that is works with blender material and UV texture. In case of UV texture, it grabs the internal material corresponding to the faces that are assigned to this texture. In case of blender material, it grabs the material that has an image texture matching the name as first texture channel. In both cases, the texture id used in VideoTexture.Texture() should be 0. Ex: matID = VideoTexture.materialID(obj,'IMvideo.png') GameLogic.video = VideoTexture.Texture(obj, matID, 0)
2008-11-07VideoTexture: comment was misplaced after previous commit.Benoit Bolsee
2008-11-06VideoTexture: fix compile error when FFmpeg is disabled.Benoit Bolsee
2008-11-06VideoTexture: new VideoTexture.ImageFFmpeg to load and reload images.Benoit Bolsee
The FFmpeg library allows to load image files. Although it is possible to load images using the VideoFFmpeg class, it is not very efficient. The new class VideoTexture.ImageFFmpeg is dedicated to image management. Constructor: ----------- VideoTexture.ImageFFmpeg('image_file_name') Opens the file but does not load the texture yet. The file name can also be a network address. It can also be a video file name; in that case only the first image is loaded. Methods: ------- refresh(True) Loads the image to texture. You just need to call it once, the file is automatically closed after that and calling refresh() again will have no effect. reload('new_file_name') Reloads the image (if new_file_name is omitted) or loads a new image. The file is opened but the texture is not updated yet, you need to call refresh() once to load the texture. Attributes: ---------- status returns the image status: 2 : file opened, texture not loaded 3 : file closed, texture loaded image returns the image data as a string of RGBA pixel size returns the image size [x,y] scale get/set the scale flag. If the scale flag is False, the image is rescale to texture format using gluScaleImage() function, slow but good quality. If the scale flag is True, the image is rescaled using a fast but less accurate algorithm. flip get/set Y-flip flag. Set to True by default as FFmpeg always provides the image upside down filter get/set filter(s) on the image. Example:
2008-11-05VideoTexture: fixing a crash when loading an image as a video file - yes it ↵Benoit Bolsee
works, provided that you don't set repeat and also no need to refresh all the time.
2008-11-05VideoTexture: Add support for GLSL. FIx small printout bug in Exception printoutBenoit Bolsee
2008-11-04VideoTexture: fix RGB/BGR confusion, make code compatible with big endian ↵Benoit Bolsee
CPU, add RGBA source filter.
2008-11-04VideoTexture: Bug report #17946: add (char*) casting to fix compile error ↵Benoit Bolsee
with Python get-set method and module object.
2008-11-04Add's GSR's INT64_C fix and removes dos line endings...Kent Mein
Kent
2008-11-02VideoTexture: fix compile error with GLint in ImageViewport under osx, part 2Benoit Bolsee
2008-11-02VideoTexture: fix compile error with GLint in ImageViewport under osx.Benoit Bolsee
2008-11-02Makefile fixes for compiling with new videotexture code.Ton Roosendaal
Also: buttons for logic, controllers, didn't line up correct when multiple objects were selected (too little space)
2008-11-02VideoTexture: use PyObjectPlus.h instead of Python.h for compatibility with ↵Benoit Bolsee
Python2.3
2008-11-02Include path for numpy no longer needed.Martin Poirier
2008-11-02VideoTexture: remove numpy dependency.Benoit Bolsee
2008-11-01VideoTexture: fix NULL pointer crash when material name is not found.Benoit Bolsee
2008-11-01Adding include path for numpy to sconscript. There must be a better way to ↵Martin Poirier
do this.
2008-11-01VideoTexture: typo in linux codeBenoit Bolsee
2008-11-01VideoTexture: AVFormatContext::pb is not a pointer for avformat library ↵Benoit Bolsee
older than 52 (linux uses 51)
2008-11-01Getting video texture closer to compiling under linuxMartin Poirier