http://www.miikahweb.com/feed.php MiikaHweb - Blender Commits By Ben2610 http://www.miikahweb.com/ MiikaHweb - Blender Commits By Ben2610 fi Thu, 02 Dec 21 21:29:45 +0000 MiikaHweb RSS contact at miikahweb.com <![CDATA[[14fdcbe] interactive_physics: Setting object position is propagated to the physics simulation...]]> http://www.miikahweb.com/en/blender/git-logs/commit/14fdcbe0009e62d2b748f5de55db5ea1d360705c 14fdcbe
Branches : interactive_physics
Author : Benoit Bolsee (ben2610)
----------------------------------------
Setting object position is propagated to the physics simulation even for dynmamic objects.

The velocity is also reset to 0, which makes sense after forcing a dynamic object position.
Known issues:
- in interactive mode, changing an object position by rna causes a simulation step
- setting any part of the object position or orientation causes the full matrix to be applied to physics => missing true rigid body API

----------------------------------------
3 Paths Changed]]>
Fri, 19 Oct 2018 08:08:59 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/14fdcbe0009e62d2b748f5de55db5ea1d360705cBenoit Bolsee
<![CDATA[[ad21793] interactive_physics: Interactive mode: new scene.flag SCE_INTERACTIVE to update...]]> http://www.miikahweb.com/en/blender/git-logs/commit/ad21793c69429dea4489603a77b95ac733966bcc ad21793
Branches : interactive_physics
Author : Benoit Bolsee (ben2610)
----------------------------------------
Interactive mode: new scene.flag SCE_INTERACTIVE to update the depsgraph without frame change but running physics.

Interactive button added on time line.

----------------------------------------
5 Paths Changed]]>
Thu, 11 Oct 2018 12:06:34 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/ad21793c69429dea4489603a77b95ac733966bccBenoit Bolsee
<![CDATA[[b389f1e] interactive_physics: Fix bug with transformed object interfering with rigid body...]]> http://www.miikahweb.com/en/blender/git-logs/commit/b389f1e9572b9ee606c2e4ae347f5520f2d38a9c b389f1e
Branches : interactive_physics
Author : Benoit Bolsee (ben2610)
----------------------------------------
Fix bug with transformed object interfering with rigid body simulation.

Note: bug was caused by use of legacy ob->flag & SELECT. New OB_PHYS_MOVING
flag to mark that an active object is being transformed.

Make active object position update independent of cache write in preparation
of interactive physics.

----------------------------------------
4 Paths Changed]]>
Wed, 10 Oct 2018 16:13:34 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/b389f1e9572b9ee606c2e4ae347f5520f2d38a9cBenoit Bolsee
<![CDATA[[4ef064d] ge_2df_textures: BGE: bge.render.offScreenCreate() takes one more parameter,...]]> http://www.miikahweb.com/en/blender/git-logs/commit/4ef064d4c21e33241f8f04b44b15ea1020728a32 4ef064d
Branches : ge_2df_textures
Author : Benoit Bolsee (ben2610)
----------------------------------------
BGE: bge.render.offScreenCreate() takes one more parameter, reflect this in the argument format string.

----------------------------------------
1 Path Changed]]>
Thu, 04 May 2017 11:07:50 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/4ef064d4c21e33241f8f04b44b15ea1020728a32Benoit Bolsee
<![CDATA[[89b1805] master: BGE: Fix silly typo that invalidates negative scaling camera...]]> http://www.miikahweb.com/en/blender/git-logs/commit/89b1805df624bf665336baaf51650928c556456b 89b1805
Branches : master
Author : Benoit Bolsee (ben2610)
----------------------------------------
BGE: Fix silly typo that invalidates negative scaling camera feature.

Negative scale on camera is a nice trick to invert render image on one
axis at no extra CPU cost. It was implemented in the Decklink branch but
I introduced a typo when porting it to master. It is now fixed.

----------------------------------------
1 Path Changed]]>
Tue, 02 May 2017 18:11:02 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/89b1805df624bf665336baaf51650928c556456bBenoit Bolsee
<![CDATA[[13bf3e9] smooth-curves: Fix BKE_nurb_handle_calc_smooth: no clamp 'HD_AUTO' handles.]]> http://www.miikahweb.com/en/blender/git-logs/commit/13bf3e926216ec603ccb872a26241cc7fdfbfa48 13bf3e9
Branches : smooth-curves
Author : Benoit Bolsee (ben2610)
Committed By : Alexander Gavrilov (angavrilov)
----------------------------------------
Fix BKE_nurb_handle_calc_smooth: no clamp 'HD_AUTO' handles.

----------------------------------------
1 Path Changed]]>
Sat, 29 Apr 2017 08:25:24 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/13bf3e926216ec603ccb872a26241cc7fdfbfa48Benoit Bolsee
<![CDATA[[558fa8b] smooth-curves: Fix clamping of auto handle in some rare case.]]> http://www.miikahweb.com/en/blender/git-logs/commit/558fa8b25680d4ec4c946d983b324b534c2a06c5 558fa8b
Branches : smooth-curves
Author : Benoit Bolsee (ben2610)
Committed By : Alexander Gavrilov (angavrilov)
----------------------------------------
Fix clamping of auto handle in some rare case.

----------------------------------------
1 Path Changed]]>
Sat, 29 Apr 2017 08:25:23 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/558fa8b25680d4ec4c946d983b324b534c2a06c5Benoit Bolsee
<![CDATA[[7936064] smooth-curves: Implement smarth algorithm to compute automatically the bezier...]]> http://www.miikahweb.com/en/blender/git-logs/commit/7936064791c69971bd687d2b6d14c31a8fe4295c 7936064
Branches : smooth-curves
Author : Benoit Bolsee (ben2610)
Committed By : Alexander Gavrilov (angavrilov)
----------------------------------------
Implement smarth algorithm to compute automatically the bezier handle that
produce no acceleration discontinuities in a series of auto handle points.
The result trajectory is physically as 'smooth' as possible given a set
of fixed point and a start and end location and velocity.
See BKE_nurb_handle_calc_smooth()

----------------------------------------
4 Paths Changed]]>
Sat, 29 Apr 2017 08:25:23 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/7936064791c69971bd687d2b6d14c31a8fe4295cBenoit Bolsee
<![CDATA[[9bf3c96] ge_2df_textures: BGE: Fix 1-pixel bug with viewport and aspect ratio.]]> http://www.miikahweb.com/en/blender/git-logs/commit/9bf3c963761c6d970a9c222da3091082c9b6f0f5 9bf3c96
Branches : ge_2df_textures
Author : Benoit Bolsee (ben2610)
----------------------------------------
BGE: Fix 1-pixel bug with viewport and aspect ratio.

The canvas viewport is initially set as (0,0,width,height) but treated at
OGL level as (left,bottom,right,top), which differs by 1 pixel.
This was causing a wrong aspect ratio in the render.

----------------------------------------
5 Paths Changed]]>
Mon, 03 Apr 2017 06:46:55 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/9bf3c963761c6d970a9c222da3091082c9b6f0f5Benoit Bolsee
<![CDATA[[9847537] ge_2df_textures: BGE: new bge.logic.Render() to perform render w/o logic step...]]> http://www.miikahweb.com/en/blender/git-logs/commit/9847537979b8a3ccf4ee5c7f6ca5b66ed9d7b80b 9847537
Branches : ge_2df_textures
Author : Benoit Bolsee (ben2610)
----------------------------------------
BGE: new bge.logic.Render() to perform render w/o logic step.

This function works only if python has control:
1. add scene custom property, call it __main__
2. give it string value as the name of a text block
3. code game loop in python in text block. Example:

import bge

bge.logic.setUseExternalClock(True)
t = 0.0;
scene = bge.logic.getCurrentScene()
cam = scene.cameras["Camera"]
cam.setViewport(120,120,370,370)
while not bge.logic.NextFrame():
cam.useViewport = True
# second render with viewport enable, clock time unchanged
bge.logic.Render()
# advance animation for next frame
t += 0.02
bge.logic.setClockTime(t)
cam.useViewport = False

----------------------------------------
6 Paths Changed]]>
Fri, 31 Mar 2017 22:57:38 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/9847537979b8a3ccf4ee5c7f6ca5b66ed9d7b80bBenoit Bolsee
<![CDATA[[e4ea5e5] ge_2df_textures: BGE: 2D filter additions.]]> http://www.miikahweb.com/en/blender/git-logs/commit/e4ea5e5810928ed3da2119a9a4a646bb6991436d e4ea5e5
Branches : ge_2df_textures
Author : Benoit Bolsee (ben2610)
----------------------------------------
BGE: 2D filter additions.

gpu_draw: skip color management for textures declared as 'non-color'.

New reserved names in 2D filters: bgl_ObjectTextureX (X=0 to 4) to
access texture channels 0 to 4 of the object on which the 2D filter
is defined.

Force U.use_16bit_textures to 1 in the blender player to give access to
floating point textures in the 2D fitlers shaders.

bge.logic.setOffScreen(True) to define and use a floating point offscreen
render buffer of the same size than the framebuffer in the main BGE loop.
Useful to get floating point results from 2D filters. The offscreen render
buffer will automatically be used by bge.texture.ImageViewport if it's enabled.
It is legal to call bge.logic.setOffScreen(True/False) to disable and reenable
the framebuffer on a frame by frame basis.

New refresh mode for bge.texture.ImageViewport and bge.texture.ImageRender
objects:
iv.refresh(buffer, mode)
mode = "DEPTH" to retrieve floating point depth buffer
= "RG32F" to retrieve red and green channels as floating point.
= "RGB32F" to retrieve red, green and blue channels as floating point
= "RGBA32F" to retrieve red, green, blue and alpha channels as floating point.
For ImageViewport and ImageRender, refresh() bypasses all filters and object
options and retrieve directly from the frame buffer or render buffer.

----------------------------------------
25 Paths Changed]]>
Mon, 20 Mar 2017 23:26:52 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/e4ea5e5810928ed3da2119a9a4a646bb6991436dBenoit Bolsee
<![CDATA[[1fd773e] master: T48694: fix bge.texture.Texture.refresh() documentation]]> http://www.miikahweb.com/en/blender/git-logs/commit/1fd773ed14ef00dd276b0406174d71dd10b6cfd6 1fd773e
Branches : master
Author : Benoit Bolsee (ben2610)
----------------------------------------
T48694: fix bge.texture.Texture.refresh() documentation

first parameter is mandatory and must be a bool indicating if the image
source should be refreshed after updating the texture.

----------------------------------------
1 Path Changed]]>
Tue, 21 Jun 2016 21:23:05 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/1fd773ed14ef00dd276b0406174d71dd10b6cfd6Benoit Bolsee
<![CDATA[[eea8941] master: BGE: DeckLink card support for video capture and streaming.]]> http://www.miikahweb.com/en/blender/git-logs/commit/eea89417f4a3e2221e25c9c3ae6a601a61a05c22 eea8941
Branches : master
Author : Benoit Bolsee (ben2610)
----------------------------------------
BGE: DeckLink card support for video capture and streaming.

You can capture and stream video in the BGE using the DeckLink video
cards from Black Magic Design. You need a card and Desktop Video software
version 10.4 or above to use these features in the BGE.
Many thanks to Nuno Estanquiero who tested the patch extensively
on a variety of Decklink products, it wouldn't have been possible without
his help.
You can find a brief summary of the decklink features here: https://wiki.blender.org/index.php/Dev:Source/GameEngine/Decklink
The full API details and samples are in the Python API documentation.

bge.texture.VideoDeckLink(format, capture=0):

Use this object to capture a video stream. the format argument describes
the video and pixel formats and the capture argument the card number.
This object can be used as a source for bge.texture.Texture so that the frame
is sent to the GPU, or by itself using the new refresh method to get the video
frame in a buffer.
The frames are usually not in RGB but in YUV format (8bit or 10bit); they
require a shader to extract the RGB components in the GPU. Details and sample
shaders in the documentation.
3D video capture is supported: the frames are double height with left and right
eyes in top-bottom order. The 'eye' uniform (see setUniformEyef) can be used to
sample the 3D frame when the BGE is also in stereo mode. This allows to composite
a 3D video stream with a 3D scene and render it in stereo.
In Windows, and if you have a nVidia Quadro GPU, you can benefit of an additional
performance boost by using 'GPUDirect': a method to send a video frame to the GPU
without going through the OGL driver. The 'pinned memory' OGL extension is also
supported (only on high-end AMD GPU) with the same effect.

bge.texture.DeckLink(cardIdx=0, format=""):

Use this object to send video frame to a DeckLink card. Only the immediate mode
is supported, the scheduled mode is not implemented.
This object is similar to bge.texture.Texture: you need to attach a image source
and call refresh() to compute and send the frame to the card.
This object is best suited for video keying: a video stream (not captured) flows
through the card and the frame you send to the card are displayed above it (the
card does the compositing automatically based on the alpha channel).
At the time of this commit, 3D video keying is supported in the BGE but not in the
DeckLink card due to a color space issue.

----------------------------------------
31 Paths Changed]]>
Sat, 11 Jun 2016 20:26:05 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/eea89417f4a3e2221e25c9c3ae6a601a61a05c22Benoit Bolsee
<![CDATA[[c0bf881] master: BL_Shader.setUniformEyef(name)]]> http://www.miikahweb.com/en/blender/git-logs/commit/c0bf881ebfa93784946ee3d03ccf15122c1b74c3 c0bf881
Branches : master
Author : Benoit Bolsee (ben2610)
----------------------------------------
BL_Shader.setUniformEyef(name)

defines a uniform that reflects the eye being rendered in stereo mode:
0.0 for the left eye, 0.5 for the right eye.
In non stereo mode, the value of the uniform is fixed to 0.0.
The typical use of this uniform is in stereo mode to sample stereo textures
containing the left and right eye images in a top-bottom order.

python:
shader = obj.meshes[0].materials[mat].getShader()
shader.setUniformEyef("eye")

shader:
uniform float eye;
uniform sampler2D tex;
void main(void)
{
vec4 color;
float ty, tx;
tx = gl_TexCoord[0].x;
ty = eye+gl_TexCoord[0].y*0.5;
// ty will be between 0 and 0.5 for the left eye render
// and 0.5 and 1.0 for the right eye render.
color = texture(tex, vec2(tx, ty));
...
}

----------------------------------------
3 Paths Changed]]>
Sat, 11 Jun 2016 20:24:18 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/c0bf881ebfa93784946ee3d03ccf15122c1b74c3Benoit Bolsee
<![CDATA[[fa9bb2f] master: Atomic ops: Fix atomic_add_uint32 and atomic_sub_uint32 in...]]> http://www.miikahweb.com/en/blender/git-logs/commit/fa9bb2ffe97334a5c686b954673af118c41d1a6d fa9bb2f
Branches : master
Author : Benoit Bolsee (ben2610)
----------------------------------------
Atomic ops: Fix atomic_add_uint32 and atomic_sub_uint32 in Windows

The assembler version in Windows used to return the previous value
of the variable while all the other versions return the new value.
This is now fixed for consistency.
Note: this bug had no effect on blender because no part of the code
use the return value of these functions, but the future BGE DeckLink
module makes use of it to implement reference counter.

----------------------------------------
1 Path Changed]]>
Sat, 11 Jun 2016 20:15:25 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/fa9bb2ffe97334a5c686b954673af118c41d1a6dBenoit Bolsee
<![CDATA[[40f1c4f] master: BGE: Various render improvements.]]> http://www.miikahweb.com/en/blender/git-logs/commit/40f1c4f34337d7dfb3fa5bcbd2daa2f602e12011 40f1c4f
Branches : master
Author : Benoit Bolsee (ben2610)
----------------------------------------
BGE: Various render improvements.

bge.logic.setRender(flag) to enable/disable render.
The render pass is enabled by default but it can be disabled with
bge.logic.setRender(False).
Once disabled, the render pass is skipped and a new logic frame starts
immediately. Note that VSync no longer limits the fps when render is off
but the 'Use Frame Rate' option in the Render Properties still does.
To run as many frames as possible, untick the option
This function is useful when you don't need the default render, e.g.
when doing offscreen render to an alternate device than the monitor.
Note that without VSync, you must limit the frame rate by other means.

fbo = bge.render.offScreenCreate(width,height,[,samples=0][,target=bge.render.RAS_OFS_RENDER_BUFFER])
Use this method to create an offscreen buffer of given size, with given MSAA
samples and targetting either a render buffer (bge.render.RAS_OFS_RENDER_BUFFER)
or a texture (bge.render.RAS_OFS_RENDER_TEXTURE). Use the former if you want to
retrieve the frame buffer on the host and the latter if you want to pass the render
to another context (texture are proper OGL object, render buffers aren't)
The object created by this function can only be used as a parameter of the
bge.texture.ImageRender() constructor to send the the render to the FBO rather
than to the frame buffer. This is best suited when you want to create a render
of specific size, or if you need an image with an alpha channel.

bge.texture.<imagetype>.refresh(buffer=None, format="RGBA", ts=-1.0)
Without arg, the refresh method of the image objects is pretty much a no-op, it
simply invalidates the image so that on next texture refresh, the image will
be recalculated.
It is now possible to pass an optional buffer object to transfer the image (and
recalculate it if it was invalid) to an external object. The object must implement
the 'buffer protocol'. The image will be transfered as "RGBA" or "BGRA" pixels
depending on format argument (only those 2 formats are supported) and ts is an
optional timestamp in the image depends on it (e.g. VideoFFmpeg playing a video file).
With this function you don't need anymore to link the image object to a Texture
object to use: the image object is self-sufficient.

bge.texture.ImageRender(scene, camera, fbo=None)
Render to buffer is possible by passing a FBO object (see offScreenCreate).

bge.texture.ImageRender.render()
Allows asynchronous render: call this method to render the scene but without
extracting the pixels yet. The function returns as soon as the render commands
have been send to the GPU. The render will proceed asynchronously in the GPU
while the host can perform other tasks.
To complete the render, you can either call refresh() directly of refresh the texture
to which this object is the source. Asynchronous render is useful to achieve optimal
performance: call render() on frame N and refresh() on frame N+1 to give as much as
time as possible to the GPU to render the frame while the game engine can perform other tasks.

Support negative scale on camera.
Camera scale was previously ignored in the BGE.
It is now injected in the modelview matrix as a vertical or horizontal flip
of the scene (respectively if scaleY<0 and scaleX<0).
Note that the actual value of the scale is not used, only the sign.
This allows to flip the image produced by ImageRender() without any performance
degradation: the flip is integrated in the render itself.

Optimized image transfer from ImageRender to buffer.
Previously, images that were transferred to the host were always going through
buffers in VideoTexture. It is now possible to transfer ImageRender
images to external buffer without intermediate copy (i.e. directly from OGL to buffer)
if the attributes of the ImageRender objects are set as follow:
flip=False, alpha=True, scale=False, depth=False, zbuff=False.
(if you need to flip the image, use camera negative scale)

----------------------------------------
39 Paths Changed]]>
Sat, 11 Jun 2016 20:05:20 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/40f1c4f34337d7dfb3fa5bcbd2daa2f602e12011Benoit Bolsee
<![CDATA[[a8809e3] temp-decklink: Decklink: remove old versions headers]]> http://www.miikahweb.com/en/blender/git-logs/commit/a8809e3ab54f8d19dc0ee72021fcdf894442249e a8809e3
Branches : temp-decklink
Author : Benoit Bolsee (ben2610)
----------------------------------------
Decklink: remove old versions headers

----------------------------------------
12 Paths Changed]]>
Fri, 10 Jun 2016 11:44:19 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/a8809e3ab54f8d19dc0ee72021fcdf894442249eBenoit Bolsee
<![CDATA[[d20fe9a] temp-decklink: VideoTexture: remove C++11 warning]]> http://www.miikahweb.com/en/blender/git-logs/commit/d20fe9a9bc932e99ce56ec3c7109d8fafeaa1fbe d20fe9a
Branches : temp-decklink
Author : Benoit Bolsee (ben2610)
----------------------------------------
VideoTexture: remove C++11 warning

Throwing in a destructor in c++11 would cause immediate crash of blender.
Replaced the throw with a message on the console.

----------------------------------------
1 Path Changed]]>
Fri, 10 Jun 2016 11:31:48 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/d20fe9a9bc932e99ce56ec3c7109d8fafeaa1fbeBenoit Bolsee
<![CDATA[[26b1114] temp-decklink: BGE: DeckLink card support for video capture and streaming.]]> http://www.miikahweb.com/en/blender/git-logs/commit/26b11140ada2994fd8846fb903e1f6bc90fbe8f6 26b1114
Branches : temp-decklink
Author : Benoit Bolsee (ben2610)
----------------------------------------
BGE: DeckLink card support for video capture and streaming.

You can capture and stream video in the BGE using the DeckLink video
cards from Black Magic Design. You need a card and Desktop Video software
version 10.4 or above to use these features in the BGE.
Many thanks to Nuno Estanquiero who tested the patch extensively
on a variety of Decklink products, it wouldn't have been possible without
his help.
You can find a brief summary of the decklink features here: https://wiki.blender.org/index.php/Dev:Source/GameEngine/Decklink
The full API details and samples are in the Python API documentation.

bge.texture.VideoDeckLink(format, capture=0):

Use this object to capture a video stream. the format argument describes
the video and pixel formats and the capture argument the card number.
This object can be used as a source for bge.texture.Texture so that the frame
is sent to the GPU, or by itself using the new refresh method to get the video
frame in a buffer.
The frames are usually not in RGB but in YUV format (8bit or 10bit); they
require a shader to extract the RGB components in the GPU. Details and sample
shaders in the documentation.
3D video capture is supported: the frames are double height with left and right
eyes in top-bottom order. The 'eye' uniform (see setUniformEyef) can be used to
sample the 3D frame when the BGE is also in stereo mode. This allows to composite
a 3D video stream with a 3D scene and render it in stereo.
In Windows, and if you have a nVidia Quadro GPU, you can benefit of an additional
performance boost by using 'GPUDirect': a method to send a video frame to the GPU
without going through the OGL driver. The 'pinned memory' OGL extension is also
supported (only on high-end AMD GPU) with the same effect.

bge.texture.DeckLink(cardIdx=0, format=""):

Use this object to send video frame to a DeckLink card. Only the immediate mode
is supported, the scheduled mode is not implemented.
This object is similar to bge.texture.Texture: you need to attach a image source
and call refresh() to compute and send the frame to the card.
This object is best suited for video keying: a video stream (not captured) flows
through the card and the frame you send to the card are displayed above it (the
card does the compositing automatically based on the alpha channel).
At the time of this commit, 3D video keying is supported in the BGE but not in the
DeckLink card due to a color space issue.

----------------------------------------
42 Paths Changed]]>
Fri, 10 Jun 2016 08:09:26 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/26b11140ada2994fd8846fb903e1f6bc90fbe8f6Benoit Bolsee
<![CDATA[[88de57a] temp-decklink: BL_Shader.setUniformEyef(name)]]> http://www.miikahweb.com/en/blender/git-logs/commit/88de57a9e134993ec1ad98c8f29b63e9395dfa4c 88de57a
Branches : temp-decklink
Author : Benoit Bolsee (ben2610)
----------------------------------------
BL_Shader.setUniformEyef(name)

defines a uniform that reflects the eye being rendered in stereo mode:
0.0 for the left eye, 0.5 for the right eye.
In non stereo mode, the value of the uniform is fixed to 0.0.
The typical use of this uniform is in stereo mode to sample stereo textures
containing the left and right eye images in a top-bottom order.

python:
shader = obj.meshes[0].materials[mat].getShader()
shader.setUniformEyef("eye")

shader:
uniform float eye;
uniform sampler2D tex;
void main(void)
{
vec4 color;
float ty, tx;
tx = gl_TexCoord[0].x;
ty = eye+gl_TexCoord[0].y*0.5;
// ty will be between 0 and 0.5 for the left eye render
// and 0.5 and 1.0 for the right eye render.
color = texture(tex, vec2(tx, ty));
...
}

----------------------------------------
3 Paths Changed]]>
Thu, 09 Jun 2016 22:28:19 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/88de57a9e134993ec1ad98c8f29b63e9395dfa4cBenoit Bolsee