| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
This is a follow-up to commit cdca3c58aa2d9549f5188910e2a77b438516714f.
|
|
|
|
|
| |
This is redundant to pipe_draw_info::max_index and doesn't really fit
in the optimizations I plan.
|
| |
|
| |
|
|
|
|
|
| |
st/mesa/st_managaer.c needs render_buffer in order
to determinde which buffer should be rendered to.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
ctx->dPriv might be != NULL then draw which is NULL is accessed:
struct dri_drawable *draw = dri_drawable(driDrawPriv);
[..]
if (ctx->dPriv != driDrawPriv) {
ctx->dPriv = driDrawPriv;
draw->texture_stamp = driDrawPriv->lastStamp - 1;
}
|
| |
|
|
|
|
|
| |
A break for case _EGL_PLATFORM_X11 is missing.
introduced by: 381ea0d67a6d84a34d23571c49bbf4339ffda364
|
| |
|
|
|
|
|
| |
MESA_drm_image isnt limited to drm platform,
others can enable the extension too.
|
| |
|
| |
|
|
|
|
|
|
|
| |
When the paint is opaque (currently, solid color with alpha 1.0f), no
blending is needed for VG_BLEND_SRC_OVER. This eliminates the serious
performance hit introduced by 859106f196ade77f59f8787b071739901cd1a843
for a common scenario.
|
|
|
|
|
| |
Before create_handle returns, obj->handle is 0. Calling
handle_to_object will fail.
|
| |
|
|
|
|
| |
We try to load a DRI driver if this fails so don't confuse users.
|
|
|
|
| |
Before, we were just casting between 32-bit VGHandles and 64-bit pointers.
|
| |
|
|
|
|
|
|
|
|
|
| |
Per the spec, all OpenVG handles are 32-bit. We can't just cast them
to/from integers on 64-bit systems.
Start fixing that mess by introducing a set of handle/pointer conversion
functions in handle.h. The next step is to implement a handle/pointer
hash table...
|
|
|
|
| |
Reported by Vinson Lee.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GLES can be enabled by running scons with
$ scons gles=yes
When gles=yes is given, the build is changed in three ways. First,
libmesa.a will be built with FEATURE_ES1 and FEATURE_ES2. This makes
DRI drivers and libEGL support and advertise GLES support. Second, GLES
libraries will be created. They are libGLESv1_CM, libGLESv2, and
libglapi. Last, libGL or opengl32 will link to libglapi. This change
is required as _glapi_* will be declared as __declspec(dllimport) in
libmesa.a on windows. libmesa.a expects those symbols to be defined in
another DLL. Due to this change to GL, GLES support is marked
experimental.
Note that GLES requires libxml2-python to generate some of its sources.
|
| |
|
| |
|
|
|
|
|
| |
st/egl native.h changed its interface in
a22a332fc7cc54d4d0973dcd21a90159cc51de1a.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The idea is to be able to match a driver using the following order
try egl_gallium with hw renderer
try egl_dri2
try egl_gallium with sw renderer
try egl_glx
given the module list
egl_gallium
egl_dri2
egl_glx
For that, UseFallback initialization option is added. The module list
is matched twice: with the option unset and with the option set. In the
first pass, egl_gallium skips its sw renderer and egl_glx rejects to
initialize since UseFallback is not set. In the second pass,
egl_gallium skips its hw renderer and egl_dri2 rejects to initialize
since UseFallback is set. The process stops at the first driver that
initializes the display.
|
|
|
|
|
|
| |
Add initialization options that drv->API.Initialize should support.
Replace drv->Probe by TestOnly initialization option and simplify
_eglMatchDriver.
|
|
|
|
|
| |
Reorder/rename and document the fields that should be set by the driver during
initialization. Drop the major/minor arguments from drv->API.Initialize.
|
|
|
|
|
|
|
|
| |
Update SConscripts to re-enable or add support for EGL on windows and
x11 platforms respectively. targets/egl-gdi is replaced by
targets/egl-static, where "-static" means pipe drivers and state
trackers are linked to statically by egl_gallium, and egl_gallium is a
built-in driver of libEGL. There is no more egl_gallium.dll on Windows.
|
| |
|
| |
|
|
|
|
|
| |
When configs is NULL, the app wants to know the number of matching
configs.
|
| |
|
| |
|
|
|
|
|
|
| |
Set window_bit only when the visual id is greater than zero. Correct
visual types. Skip slow configs as they are not relevant. Finally, do
not return duplicated configs.
|
|
|
|
| |
Flush before presenting.
|
|
|
|
| |
Unreference validated resources or remove unnecessary validations.
|
|
|
|
|
|
|
| |
All single-buffered configs were ignored before to make sure
EGL_RENDER_BUFFER is settable for window surfaces. It is better to
allow single-buffered configs and set EGL_WINDOW_BIT only for
double-buffered ones. This way there can be single-buffered pixmaps.
|
|
|
|
| |
Multisample buffers are never requested.
|
|
|
|
|
| |
In direct rendering scenario, it is not needed until an EGLDisplay can
support both HW and SW pipe screens.
|
|
|
|
|
|
| |
It was used to find a compatible config for a given pixmap. Now that a
config is optional for pixmap surface creation, the function is not
needed.
|
|
|
|
|
|
| |
eglCopyBuffers or EGL_KHR_image_pixmap require creating a pixmap surface
without a config. Make it just work without relying on
is_pixmap_supported.
|
|
|
|
|
|
| |
This is a follow-up to commit ec51092a72e2dff1e9b1362d813fe4691cda89b7.
Fixes SCons build.
|
|
|
|
|
|
|
|
| |
The preprocessor magic in mapi was nothing but obfuscation. Rewrite
mapi_abi.py to generate real C code.
This commit removes the hack added in
43121f20866bb89e8dac92bd92ec85a943704b7e.
|
|
|
|
|
| |
Otherwise, when it is called from within a driver, the caller cannot
free the returned data (on Windows).
|
| |
|
|
|
|
|
|
|
|
|
| |
rgb_src_factor and rgb_dst_factor should be PIPE_BLENDFACTOR_ONE for
VG_BLEND_SRC_IN and VG_BLEND_DST_IN respectively. VG_BLEND_SRC_OVER can
be supported only when the fb has no alpha channel. VG_BLEND_DST_OVER
and VG_BLEND_ADDITIVE have to be supported with a shader.
Note that Porter-Duff blending rules assume premultiplied alpha.
|
| |
|
|
|
|
|
| |
TEMP[1].w will be needed for OUT.w just below. Use TEMP[0] to store the
intermediate value.
|