Commit Graph

7990 Commits

Author SHA1 Message Date
Guy Zadickario
8c962dce6c opengles emulator: replace the readback at end of frame with blit
That replaces the readback to host we do at the end of each frame
with two blits on the GPU, one to copy the pixels into a texture
and another to render the texture to another in order to flip
the image.

Change-Id: I7e0e10493d38944d0b613e245023f34236d3dfc4
2011-08-16 10:52:19 +03:00
Dianne Hackborn
b4ac2b3b35 Update to follow framework change.
Change-Id: I4ce9cadc9a3a5e34bc0fc4cf01ebb0cd1447f913
2011-08-15 18:25:56 -07:00
David Turner
d1e8a2e257 am 53aef614: am e8026df0: am e16a448d: Merge "emulator opengles: improve TcpStream throughput"
* commit '53aef61457167f1dae050a30df7ed7f49ac55cc3':
  emulator opengles: improve TcpStream throughput
2011-08-15 16:23:33 -07:00
David Turner
53aef61457 am e8026df0: am e16a448d: Merge "emulator opengles: improve TcpStream throughput"
* commit 'e8026df0df8a26cb75b7756079759c6973f6e40f':
  emulator opengles: improve TcpStream throughput
2011-08-15 16:21:30 -07:00
David Turner
e8026df0df am e16a448d: Merge "emulator opengles: improve TcpStream throughput"
* commit 'e16a448df04a66e36bc9e48cc1c322187f65ef46':
  emulator opengles: improve TcpStream throughput
2011-08-15 16:19:46 -07:00
David Turner
e16a448df0 Merge "emulator opengles: improve TcpStream throughput" 2011-08-15 15:58:42 -07:00
David Turner
3ae6928d8d emulator opengles: improve TcpStream throughput
This patch improves the performance of the TcpStream implementation
on the host by disabling the Nagle algorithm, thus improving the
bandwidth of small packets.

When used with the corresponding change in the emulator, this
significantly improves the speed of OpenGLES emulation for many
applications.

Change-Id: Ic09e51ecddf04bc7d667f46e1d260030d5fcad88
2011-08-16 00:55:43 +02:00
David Turner
a765188519 am b0892c55: am 698014ea: am 36371ff3: Merge "opengles emulator: do single display connection for all subwindow"
* commit 'b0892c5572c0f8547251d4932f32fcd1e24d3fc7':
  opengles emulator: do single display connection for all subwindow
2011-08-15 10:29:08 -07:00
David Turner
ab1ebd2fde am 0a4e10bb: am 57e03b4c: am ec926484: Merge "EGL translator : fix windows egl for handling device contexts"
* commit '0a4e10bb4920ab89670f7a65f8d87000cce452b4':
  EGL translator : fix windows egl for handling device contexts
2011-08-15 10:29:06 -07:00
David Turner
b0892c5572 am 698014ea: am 36371ff3: Merge "opengles emulator: do single display connection for all subwindow"
* commit '698014ea6faf5f3445fc10c97270e11a7afa50d1':
  opengles emulator: do single display connection for all subwindow
2011-08-15 10:25:51 -07:00
David Turner
0a4e10bb49 am 57e03b4c: am ec926484: Merge "EGL translator : fix windows egl for handling device contexts"
* commit '57e03b4cc5d2a29957d0749d6bb9baeaafb9eab6':
  EGL translator : fix windows egl for handling device contexts
2011-08-15 10:25:49 -07:00
David Turner
698014ea6f am 36371ff3: Merge "opengles emulator: do single display connection for all subwindow"
* commit '36371ff3eb65acbac977f349514a49fc3ade4290':
  opengles emulator: do single display connection for all subwindow
2011-08-15 10:23:54 -07:00
David Turner
57e03b4cc5 am ec926484: Merge "EGL translator : fix windows egl for handling device contexts"
* commit 'ec926484c0c9f6f7597ef88767eb4d22190f23af':
  EGL translator : fix windows egl for handling device contexts
2011-08-15 10:23:52 -07:00
David Turner
36371ff3eb Merge "opengles emulator: do single display connection for all subwindow" 2011-08-15 10:04:52 -07:00
David Turner
ec926484c0 Merge "EGL translator : fix windows egl for handling device contexts" 2011-08-15 10:04:43 -07:00
Yochai Shefi Simchon
a6b033d19e opengles emulator: do single display connection for all subwindow
This is a workaround to a driver bug on Intel/Linux, when destroying
a subwindow do not close the X display connection, keep it for the
next call to createSubWindow. It happens that the intel/linux driver
caches the display connection for each window ID and use it during
swap or something similar. Using the same display connection for
all subwindows workaround the problem.

Also added a wait loop to wait until the window becomes mapped
instead of just calling XSync after calling XMapWindow. This
is more accurate and make sure we do not miss the first window
refresh.

Change-Id: I63c69d736df433666a8c79d71127afe72776e89f
2011-08-15 19:03:53 +02:00
Yochai Shefi Simchon
2a581c9cb2 EGL translator : fix windows egl for handling device contexts
on eglCreateContext the translator created a window for the
specified config with a matching pixelformat and saved it's
device context for future use.
however when the thread exited the window was destroyed by windows
and the handle saved became invalid.
the next call to wglCreateContext with the handle saved failed.

fixed the problem by creating windows per thread and not in a
global pool.
each thread will create its own window for each config when asked
the window will be destroyed when the thread exits.

Change-Id: I63668a20e8c30c42c4cfcaca664938683600b28e
2011-08-15 19:03:53 +02:00
David Turner
021cf0a639 am 72a716b4: am 7d644a74: am 0c245f6a: Merge "opengles emulator: do not publish support for setUpdateRect"
* commit '72a716b4d1b6980d9bd104010bca48eeba4a4ac2':
  opengles emulator: do not publish support for setUpdateRect
2011-08-15 10:00:28 -07:00
David Turner
d67ad7303c am dab1fb3b: am 0315d710: am 06039b1e: Merge "opengles emulator: call XInitThreads in emulator_test_renderer"
* commit 'dab1fb3b90b3570e761bf6b5b13a0e03ed1e0e18':
  opengles emulator: call XInitThreads in emulator_test_renderer
2011-08-15 10:00:24 -07:00
David Turner
72a716b4d1 am 7d644a74: am 0c245f6a: Merge "opengles emulator: do not publish support for setUpdateRect"
* commit '7d644a7468113c78a08725a817a518f8ddd5ae55':
  opengles emulator: do not publish support for setUpdateRect
2011-08-15 09:58:07 -07:00
David Turner
dab1fb3b90 am 0315d710: am 06039b1e: Merge "opengles emulator: call XInitThreads in emulator_test_renderer"
* commit '0315d710171f2453699ac97dd0359c05616f30b0':
  opengles emulator: call XInitThreads in emulator_test_renderer
2011-08-15 09:58:05 -07:00
David Turner
7d644a7468 am 0c245f6a: Merge "opengles emulator: do not publish support for setUpdateRect"
* commit '0c245f6a4abe8a5ad26e0f0939ee624bc4fcf3d3':
  opengles emulator: do not publish support for setUpdateRect
2011-08-15 09:56:34 -07:00
David Turner
0315d71017 am 06039b1e: Merge "opengles emulator: call XInitThreads in emulator_test_renderer"
* commit '06039b1e3be0ace898f28c3f4742a2879d9767b9':
  opengles emulator: call XInitThreads in emulator_test_renderer
2011-08-15 09:56:32 -07:00
David Turner
0c245f6a4a Merge "opengles emulator: do not publish support for setUpdateRect" 2011-08-15 09:21:39 -07:00
David Turner
06039b1e3b Merge "opengles emulator: call XInitThreads in emulator_test_renderer" 2011-08-15 09:20:45 -07:00
Guy Zadickario
22bb339abb opengles emulator: do not publish support for setUpdateRect
our framebuffer implementation in gralloc does not support
setUpdateRect but we erronously publish as we do. Reset
the setUpdateRect so that flinger will not try to use it.

Change-Id: I2e4f2ef7e5701aed69caa194426945bafd5ac4c9
2011-08-15 16:46:57 +03:00
Guy Zadickario
bdfb71562c opengles emulator: call XInitThreads in emulator_test_renderer
Now that we are not running the renderer as a seperate process
we need to have the XInitThreads call we put in the renderer process
inside emulator_test_renderer since the render server runs inside that
thread.
NOTE FOR INTEGRATION: this will need to be added to the emulator as
well.

Change-Id: I70592ad976d08c86e2c9e75b11b6ad57d6067606
2011-08-15 16:46:57 +03:00
Daniel Lehmann
3335843705 Include the new activity classes in the samples
Bug:5135808
Change-Id: I08244836b57564e108f3b36e520a3cce95158cc7
2011-08-14 15:45:28 -07:00
David Turner
738c2204c5 am 7dc8b4a7: am 3d9ae4e7: am caf8eafb: Merge "opengles emulator: support display rotation and resize"
* commit '7dc8b4a786d653174a3c40d9bd31eff57ce69502':
  opengles emulator: support display rotation and resize
2011-08-13 16:17:50 -07:00
David Turner
8422d79bf2 am 3167d2a9: am f8f0a7e9: am d33222df: Merge "opengles emulator: mac support binding context to pbuffer"
* commit '3167d2a9c777757fd458c8122aff92bf251d485f':
  opengles emulator: mac support binding context to pbuffer
2011-08-13 16:17:48 -07:00
David Turner
ec40e438e3 am 3d7e82c0: am b76d1f0a: am 255bdd3f: Merge "opengles emulator: fix shader parser precision qualifiers"
* commit '3d7e82c0c048e2a8662020aa78db0c21859deb6c':
  opengles emulator: fix shader parser precision qualifiers
2011-08-13 16:17:46 -07:00
David Turner
dc650add7b am 252e2903: am 7014f052: am dd7d29e0: Merge "opengles emulator: added FPS statistics printout"
* commit '252e29031d59ed6ff49e27844b1c0ed22ee676fd':
  opengles emulator: added FPS statistics printout
2011-08-13 16:17:43 -07:00
David Turner
290d012756 am 06703c04: am 70cac15e: am d2c5f503: Merge "opengles emulator: fix the uniform location WAR for intel platforms"
* commit '06703c0450f5c64aaaec0091f82a396dcd70c7c2':
  opengles emulator: fix the uniform location WAR for intel platforms
2011-08-13 16:17:41 -07:00
David Turner
9e31c9f36a am 6b7eecfb: am 1639334c: am f149b4f0: Merge "opengl emulator: fix windows build"
* commit '6b7eecfb46bc265579f299d347f8f89f85253d6d':
  opengl emulator: fix windows build
2011-08-13 16:17:38 -07:00
David Turner
814abdc428 am fe2bed33: am 34552f4c: am 584bcf8a: Merge "opengles emulator: fix shader/program info log functions"
* commit 'fe2bed335f3bb2db935b368a29978c142c7e6294':
  opengles emulator: fix shader/program info log functions
2011-08-13 16:17:33 -07:00
David Turner
7dc8b4a786 am 3d9ae4e7: am caf8eafb: Merge "opengles emulator: support display rotation and resize"
* commit '3d9ae4e7df9b43ac99f98344e9bd564673f81544':
  opengles emulator: support display rotation and resize
2011-08-13 16:14:12 -07:00
David Turner
3167d2a9c7 am f8f0a7e9: am d33222df: Merge "opengles emulator: mac support binding context to pbuffer"
* commit 'f8f0a7e93aa9c8b679e3f1ee50af681ff40daeff':
  opengles emulator: mac support binding context to pbuffer
2011-08-13 16:14:10 -07:00
David Turner
3d7e82c0c0 am b76d1f0a: am 255bdd3f: Merge "opengles emulator: fix shader parser precision qualifiers"
* commit 'b76d1f0a6b40d2f27e2120c89be04459944ea871':
  opengles emulator: fix shader parser precision qualifiers
2011-08-13 16:14:08 -07:00
David Turner
252e29031d am 7014f052: am dd7d29e0: Merge "opengles emulator: added FPS statistics printout"
* commit '7014f052514e30ff3531813b2ef0c816130ccf1f':
  opengles emulator: added FPS statistics printout
2011-08-13 16:14:06 -07:00
David Turner
06703c0450 am 70cac15e: am d2c5f503: Merge "opengles emulator: fix the uniform location WAR for intel platforms"
* commit '70cac15eacd3524d758bcb0dbd394772f2bbc5a0':
  opengles emulator: fix the uniform location WAR for intel platforms
2011-08-13 16:14:03 -07:00
David Turner
6b7eecfb46 am 1639334c: am f149b4f0: Merge "opengl emulator: fix windows build"
* commit '1639334c53cb51476d4fa07c50facfe75a001692':
  opengl emulator: fix windows build
2011-08-13 16:14:00 -07:00
David Turner
fe2bed335f am 34552f4c: am 584bcf8a: Merge "opengles emulator: fix shader/program info log functions"
* commit '34552f4cf8796a27666d7abbdaeff8a39a2bdbf3':
  opengles emulator: fix shader/program info log functions
2011-08-13 16:13:57 -07:00
David Turner
3d9ae4e7df am caf8eafb: Merge "opengles emulator: support display rotation and resize"
* commit 'caf8eafb1e54cadd2793a0382db9e8343eb247f7':
  opengles emulator: support display rotation and resize
2011-08-13 16:11:02 -07:00
David Turner
f8f0a7e93a am d33222df: Merge "opengles emulator: mac support binding context to pbuffer"
* commit 'd33222df9d7f85708f55d6abd45b0ea3a198d809':
  opengles emulator: mac support binding context to pbuffer
2011-08-13 16:11:00 -07:00
David Turner
b76d1f0a6b am 255bdd3f: Merge "opengles emulator: fix shader parser precision qualifiers"
* commit '255bdd3f1b68c98bdeeea7006132b61e9bade1cb':
  opengles emulator: fix shader parser precision qualifiers
2011-08-13 16:10:58 -07:00
David Turner
7014f05251 am dd7d29e0: Merge "opengles emulator: added FPS statistics printout"
* commit 'dd7d29e06aa9d8c2a68b68291d9343a88df62209':
  opengles emulator: added FPS statistics printout
2011-08-13 16:10:56 -07:00
David Turner
70cac15eac am d2c5f503: Merge "opengles emulator: fix the uniform location WAR for intel platforms"
* commit 'd2c5f50354052223348aa9acbdaeea407b28d8f9':
  opengles emulator: fix the uniform location WAR for intel platforms
2011-08-13 16:10:53 -07:00
David Turner
1639334c53 am f149b4f0: Merge "opengl emulator: fix windows build"
* commit 'f149b4f0650c1a96eb13c6c0db2b493ac57c75aa':
  opengl emulator: fix windows build
2011-08-13 16:10:51 -07:00
David Turner
34552f4cf8 am 584bcf8a: Merge "opengles emulator: fix shader/program info log functions"
* commit '584bcf8aea9270069fed1c4e87a48a2a9c7e4680':
  opengles emulator: fix shader/program info log functions
2011-08-13 16:10:48 -07:00
David Turner
caf8eafb1e Merge "opengles emulator: support display rotation and resize" 2011-08-13 15:47:13 -07:00