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-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-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-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
2008-11-01Video Texture: missing newlines at the end of several files.Benoit Bolsee
2008-11-01Patch 17909: 2D Filter texture coordinates changes, by Dalai Felinto:Brecht Van Lommel
* The second opengl texture coordinate (gl_TexCoord[1]) are now filled in as well, and will give canvas coordinates from 0.0 to 1.0. The first texture coordinates still give the coordinates in the texture that is being used, which may not match the canvas exactly, so both coordinates are needed. * Also optimization to allow using smaller texture sizes with multiple smaller viewports. * Print the detailed GLSL shader errors (once), for easier debugging.
2008-11-01BGE Video Texture: fix constant initializer problem with Exception ↵Benoit Bolsee
description. Uniformized the line ending.
2008-11-01Fix Cmake for MSVC 32bitBenoit Bolsee
2008-11-01VideoTexture module.Benoit Bolsee
The only compilation system that works for sure is the MSVC project files. I've tried my best to update the other compilation system but I count on the community to check and fix them. This is Zdeno Miklas video texture plugin ported to trunk. The original plugin API is maintained (can be found here http://home.scarlet.be/~tsi46445/blender/blendVideoTex.html) EXCEPT for the following: The module name is changed to VideoTexture (instead of blendVideoTex). A new (and only) video source is now available: VideoFFmpeg() You must pass 1 to 4 arguments when you create it (you can use named arguments): VideoFFmpeg(file) : play a video file VideoFFmpeg(file, capture, rate, width, height) : start a live video capture file: In the first form, file is a video file name, relative to startup directory. It can also be a URL, FFmpeg will happily stream a video from a network source. In the second form, file is empty or is a hint for the format of the video capture. In Windows, file is ignored and should be empty or not specified. In Linux, ffmpeg supports two types of device: VideoForLinux and DV1394. The user specifies the type of device with the file parameter: [<device_type>][:<standard>] <device_type> : 'v4l' for VideoForLinux, 'dv1394' for DV1394; default to 'v4l' <standard> : 'pal', 'secam' or 'ntsc', default to 'ntsc' The driver name is constructed automatically from the device types: v4l : /dev/video<capture> dv1394: /dev/dv1394/<capture> If you have different driver name, you can specify the driver name explicitely instead of device type. Examples of valid file parameter: /dev/v4l/video0:pal /dev/ieee1394/1:ntsc dv1394:ntsc v4l:pal :secam capture: Defines the index number of the capture source, starting from 0. The first capture device is always 0. The VideoTexutre modules knows that you want to start a live video capture when you set this parameter to a number >= 0. Setting this parameter < 0 indicates a video file playback. Default value is -1. rate: the capture frame rate, by default 25 frames/sec width: height: Width and height of the video capture in pixel, default value 0. In Windows you must specify these values and they must fit with the capture device capability. For example, if you have a webcam that can capture at 160x120, 320x240 or 640x480, you must specify one of these couple of values or the opening of the video source will fail. In Linux, default values are provided by the VideoForLinux driver if you don't specify width and height. Simple example ************** 1. Texture definition script: import VideoTexture contr = GameLogic.getCurrentController() obj = contr.getOwner() if not hasattr(GameLogic, 'video'): matID = VideoTexture.materialID(obj, 'MAVideoMat') GameLogic.video = VideoTexture.Texture(obj, matID) GameLogic.vidSrc = VideoTexture.VideoFFmpeg('trailer_400p.ogg') # Streaming is also possible: #GameLogic.vidSrc = VideoTexture.VideoFFmpeg('http://10.32.1.10/trailer_400p.ogg') GameLogic.vidSrc.repeat = -1 # If the video dimensions are not a power of 2, scaling must be done before # sending the texture to the GPU. This is done by default with gluScaleImage() # but you can also use a faster, but less precise, scaling by setting scale # to True. Best approach is to convert the video offline and set the dimensions right. GameLogic.vidSrc.scale = True # FFmpeg always delivers the video image upside down, so flipping is enabled automatically #GameLogic.vidSrc.flip = True if contr.getSensors()[0].isPositive(): GameLogic.video.source = GameLogic.vidSrc GameLogic.vidSrc.play() 2. Texture refresh script: obj = GameLogic.getCurrentController().getOwner() if hasattr(GameLogic, 'video') != 0: GameLogic.video.refresh(True) You can download this demo here: http://home.scarlet.be/~tsi46445/blender/VideoTextureDemo.blend http://home.scarlet.be/~tsi46445/blender/trailer_400p.ogg
2008-11-01Preparation to VideoTexture: everything but the VideoTexture module itself.Benoit Bolsee
Rename PHY_GetActiveScene() to KX_GetActiveScene(): more logical name Add KX_GetActiveEngine() new KX_KetsjiEngine::GetClockTime(void) to return current render frame time: if the CPU does not keep up with the frame rate, up to 5 consecutive logic frames are processed between each render frame, so that the logic system stays accurate even if the graphic system is slow. For the video texture module, it is important to stay in sync with the render frame: no need to update the texture for logic frame. BL_Texture::swapTexture(): texture id manipulation BL_Texture::getTex() : return material texture Enable video support in ffmpeg for Linux.
2008-10-31* Minimum SCons version is now 1.0.0Nathan Letwory
- Code has been changed to reflect this (ie. deprecated functions are not anymore used) * clean up the C and C++ compiler flags mess. - in the environment construction of BlenderLib all the compile flag governing options have been split in the *C*, *CC* and *CXX* containing equivalents. C is for C compiler only flags. CC is for C and C++ compiler flags and CXX is for C++ compiler only flags. All the platform default config files need to be double checked and fixed wherever it looks necessary. Either DIY, or send me a note with needed changes. - a start for the BlenderLib parameter list has been made - all the SConscripts need to be checked and modified to hand in flags properly. * A theeth request: make -jN settable in the config file. - I give you BF_NUMJOBS, which is set to 1 by default. In your user-config.py, set BF_NUMJOBS=4 to have 4 parallel jobs handled. Yay.
2008-10-30* Build aborts when giving options on command-line when WITH_BF_DOCS=TrueNathan Letwory
- make sure epydoc generation doesn't get a fit over options given on scons command-line -> don't use arguments from command-line.
2008-10-27face transp option CLIP wasnt added to the py api.Campbell Barton
added gameObject.replaceMesh(meshname) - needed this for an automatically generated scene where 100's of objects would have needed logic bricks automatically added. Quicker to run replace mesh on all of them from 1 script.
2008-10-22make sure BPY_Err_Handle clears python errors, even if the exception cant be ↵Campbell Barton
printed. Added PyErr_Clear() incase there are other references to exception data (sys.exc_info() from python)
2008-10-22fix for [#17878] Scripts operating on blender objects don't clear memory ↵Campbell Barton
after a crash This is an interesting bug since it is likely the cause of many other suspicious python crashes in blender. sys.last_traceback would store references to PyObjects at the point of the crash. it would only free these when sys.last_traceback was set again or on exit. This caused many crashes in the BGE while testing since python would end up freeing invalid game objects - When running scripts with errors, Blender would crash every 2-5 runs - in my test just now it crashed after 4 trys. It could also segfault blender, when (for eg) you run a script that has objects referenced. then load a new file and run another script that raises an error. In this case all the invalid Blender-Object's user counts would be decremented, even though none of the pointers were still valid.
2008-10-21renamed WITH_BF_BPYDOC to WITH_BF_DOCS, added SConscript for building BGE ↵Campbell Barton
docs too.
2008-10-19source/blender/blenloader/intern/readfile.c - use memmove rather then ↵Campbell Barton
strncpy for overlapping strings. source/blender/blenlib/intern/fileops.c - zero length strings would check for a slash before the strings first char. source/gameengine/GameLogic/SCA_JoystickSensor.cpp - m_istrig_prev was not initialized source/blender/src/editmesh.c - active face pointer was not set to NULL in free_editMesh()
2008-10-18Added joystick epydocs, only changed incorrect docstrings in ↵Campbell Barton
SCA_JoystickSensor.cpp patch [#17857] HotKeys Update by dfelinto - SmoothStroke and Anchored. Made own edits, removed videoscape and added curve and armature specials.
2008-10-17BGE bug fix (continuation of previous bug fix): Benoit Bolsee
- Forgot to make SCA_ISensor::UnregisterToManager() virtual to intercept active-inactive transition on collision sensor to clear colliders reference. - Don't record collision on inactive sensor. This situation occurs when an object with an inactive collision sensor collides with an object with an active collision sensor: the collision handler triggers both sensors. The result of this bug was pending references that eventually cause temporary memory leak (until the sensor is reactivated).
2008-10-17BGE showstopper bug fix: Benoit Bolsee
- Reset hit object pointer at end of frame of touch sensor to avoid returning invalid pointer to getHitObject(). - Clear all references in KX_TouchSensor::m_colliders when the sensor is disabled to avoid loose references. - Test GetSGNode() systematically for all KX_GameObject functions that can be called from python in case a python controller keeps a reference in GameLogic (bad practice anyway).