Commit Graph

59 Commits

Author SHA1 Message Date
Jason Sams
0b9bbb6dc5 DO NOT MERGE. Merge Froyo renderscript to Eclair to support live wallpapers on droid. This gives the necessary CPU reduction to allow the wallpapers to work on the slower CPU.
Committer: Jason Sams <rjsams@android.com>

 On branch droid
 Changes to be committed:
   (use "git reset HEAD <file>..." to unstage)

	modified:   libs/rs/rsAllocation.cpp
	modified:   libs/rs/rsAllocation.h
	modified:   libs/rs/rsContext.cpp
	modified:   libs/rs/rsContext.h
	modified:   libs/rs/rsProgram.cpp
	modified:   libs/rs/rsProgram.h

Delete the old rollo sample which is obsolete.

Fix film init

Begin gl2 support.  Renderscript still uses GL1.1 by default.  However, 2.0 can be enabled and will render most tests correctly.

Fix film

Beging GL2 user shaders.  Switch master to using GL2 by default.

Implement RS tracked defered texture and buffer object uploads.

 Committer: Jason Sams <rjsams@android.com>

 On branch droid
 Changes to be committed:
   (use "git reset HEAD <file>..." to unstage)

	modified:   libs/rs/rsAllocation.cpp
	modified:   libs/rs/rsAllocation.h
	modified:   libs/rs/rsContext.h
	modified:   libs/rs/rsProgramFragment.cpp
	modified:   libs/rs/rsSimpleMesh.cpp

Remove check for surface valid that is no longer valid.

Continue development of es2.0 user shader support for renderscript.  This change cleans up ProgramVertex creation and adds support for passing input, output, and constant type info.

Continue es2 shader dev

Conflicts:

	graphics/java/android/renderscript/Program.java
	graphics/java/android/renderscript/ProgramVertex.java

Place shader logging behind prop to declutter logs.

Fix emulated glColor in es2 mode.

Fix live wallpaper many.  Z coordinate was being ignored for draw quad call.

Add argument checking to sampler builder to disallow illegal modes.

Move texture bindings to base program object.  Change ProgramFragment creation to require a texture format in 1.0 mode.

Element restructuring.  Add support for new basic Element types including the RS objects and vectors(2-4).  In theory this paves the way for maintaining type info for RS objects, passing elements for GLSL uiforms/attribs/varyings, and supporting nested structures.

This will break some apps, checkings for other projects will follow to unbreak them.

Disable excessive RS logging.

Add RS support for generic attribs as input to vertex programs.

More complete support for named attribs.  Adds user typed attribs as available to programVertex.  Non user attribs are not treated like user for GL2 for simplicity.

Support npot on es 2.0 HW.

Change user attribs to look for empty slot rather than using them in order.  Prevents conflict with numbered legacy slots.

Fix npot but where mipmap level sizes were rounding in the wrong direction.  Should always be floor.

Implement type generation for user uniforms in vertex shader.

Remove excessive logging, fix error in GLSL uniform generation.

Fix RS mipmap generation for 8 bit alpha textures.

Cleanup seperation of Legacy and user attribs.  All user programs now use the new names.  Legacy vertex attribs are given default names.

Fix some minor bugs with GL state setup that were exposed by Droids driver.

Implement drawSpriteCropped on es2.0
2010-02-11 18:16:21 -08:00
Jason Sams
b9d5c574ff Throttle low priority RS threads by sleeping once per frame to avoid starving other apps. 2009-12-09 11:05:45 -08:00
Jason Sams
9dab667e03 Force a crash under conditions where white square bug in all apps is likely to occur. 2009-11-24 12:26:35 -08:00
Jason Sams
715333b832 Add support for dumping RS objects to aid in debugging of white blocks bug. 2009-11-17 17:26:46 -08:00
Jason Sams
7d787b4722 Add setPriority to allow wallpapers to run at lower cpu priority than default. 2009-11-15 12:14:26 -08:00
Jason Sams
eb4b031804 Make default vertex program correctly track surface size. 2009-11-12 16:09:45 -08:00
Jason Sams
3bc47d4381 Defer EGL init until the surface changed call comes in. Pass w,h along with surface for verification of driver state. 2009-11-12 15:10:47 -08:00
Jason Sams
efd9b6fb2e Support applications changing the surface attached to the RS. 2009-11-03 14:15:28 -08:00
Jason Sams
9d5e03db99 Fix RS bugs. We were holding a pointer to the script text from the java vm. Move freeing of objects to before context teardown to allow allocations to clean up their data. 2009-11-03 11:25:42 -08:00
Jason Sams
b7a6c4340a Fix some leaks. This fixes the major malloc memory leak in allApps. Still tracking some much more minor issues. 2009-11-02 14:25:10 -08:00
Jason Sams
7136220b54 Fix egl cleanup code on context teardown. 2009-10-27 14:44:31 -07:00
Jason Sams
741a6100a0 Fix bug where dirty messages for allocations attached to programVertex objects could be lost. 2009-10-15 18:45:45 -07:00
Jason Sams
41c19db90e Remove hack in RS that called exit to WAR now fixed driver bugs. Make gloabal init safe by locking around the critical code. 2009-10-15 16:47:31 -07:00
Jason Sams
c7412b3b08 Minor bug fixes and add glError check. 2009-10-15 16:06:42 -07:00
Jason Sams
6a17e163a0 Add egl init start message to help debug driver init hangs. 2009-10-15 16:06:42 -07:00
Jason Sams
996db8dace Fix tls crash on startup if more than one RS contexts are created in one process. 2009-10-06 17:16:55 -07:00
Jason Sams
516c319115 Implement data push from scripts. Fixes the problem where apps would have to poll to monitor a scripts state.
Fix bug in StoreState where state could be overridden by the default unless the script used more than one state.

Change only impacts renderscript and renderscript apps.
2009-10-06 13:58:47 -07:00
Jason Sams
5235cf3f41 Fix but processing raster state pragma.
rename stateFragmentStore to stateStore
2009-09-28 18:12:56 -07:00
Jason Sams
61f08d6fa7 Improved object lifecycle tracking and fix leaks. 2009-09-25 16:37:33 -07:00
Jason Sams
66b2771d74 Reduce debugging spew and add props to selectivly re-enable it.
change-id: Ib59ed5d7a9d479ccd1af456029735dbc65ae1efe
2009-09-25 15:25:00 -07:00
Jason Sams
a9e7a05b84 Improve renderscript context teardown. Track object in the system and then force their cleanup by releasing all user references once destroy context is called. Java layer will no longer send destroy notifications for objects garbage collected once a context is destroyed. 2009-09-25 14:51:22 -07:00
Jason Sams
65e7aa56f5 Implement pause/resume for the RS thread. 2009-09-24 17:38:20 -07:00
Jason Sams
d3f2eaf60a Minor cleanup of profile and compile logging. 2009-09-24 15:42:52 -07:00
Jason Sams
e60446b9c1 Fix invokables to make sure script pointers are setup before invoking function calls. Reduce app startup time up to 1s. 2009-09-24 14:55:38 -07:00
Joe Onorato
9ac2c66f01 Make the renderscript timing logging available by setting debug.rs.profile=1 2009-09-23 17:26:07 -07:00
Jason Sams
ebfb436a49 Add raster object to control point and line params. Add flag to force SW rendering. 2009-09-23 13:57:02 -07:00
Jason Sams
59038ca98b Update viewport when height or width change. 2009-09-22 12:26:53 -07:00
Jason Sams
ea84a7c517 Remove "predefined" elements from Java layer. Static elements continue to exist but are no longer treated as a special version of element. 2009-09-04 14:42:41 -07:00
Jason Sams
2525a81522 Improve structure support using symbol lookup of named structures in scripts to allow them to appear as just pointers to structs. 2009-09-03 15:43:13 -07:00
Jason Sams
07ae406237 Implement async data/subData. Implement TriangleMeshBuilder in SimpleMesh which replaces TriangleMesh. Update Film to use new builder. 2009-08-27 20:23:34 -07:00
Jason Sams
67c6844ea0 Remove bogus comments and logging. 2009-08-25 17:09:59 -07:00
Jason Sams
f5b4596a38 Implement java interface for RS shutdown and fix shutdown deadlock with the command fifo. 2009-08-25 14:49:07 -07:00
Jason Sams
b13ada5071 Add support for selecting the color bit depth and if the application used a depth buffer. 2009-08-25 11:44:30 -07:00
Jason Sams
f4d160653f Improved RS timing code to monitor where we spend CPU time. 2009-08-19 12:17:14 -07:00
Jason Sams
730ee65d4d Implement OOB destroy method that can be called from the java finalizer removing the need to explicitly destroy objects. 2009-08-18 17:07:09 -07:00
Jason Sams
7ce033d797 Cleanup of object destruction. No need to have a per-class destruction function. This was a legacy of the distant past when the classes did not have a common base. 2009-08-18 14:20:07 -07:00
Jason Sams
bc948dedce Remove global IO context and integrate it into the RS context. 2009-08-17 18:35:48 -07:00
Jason Sams
43ee06857b Implement reflecting Java objects into the ACC enviroment. 2009-08-12 17:54:11 -07:00
Joe Onorato
d7b3774da6 Let java put #defines into renderscript 2009-08-09 22:58:20 -07:00
Jason Sams
9bee51c42e Remove useless slot from ProgramVertex. Optimize GL state setup. 2009-08-05 13:57:03 -07:00
Jason Sams
b0ec1b46d6 Add "boxed" bitmap uploads which simply place a non-pow2 bitmap into the smallest larger pow texture. The added space is filled black. 2009-07-28 12:02:16 -07:00
Jason Sams
7aa4f3a163 More test app work 2009-07-14 13:59:23 -07:00
Mathias Agopian
f31868e59f merge master in master_gl 2009-06-24 18:31:21 -07:00
Jason Sams
f29ca50d80 Cleanup logging and fix a startup race condition that manifested on Firestone. 2009-06-23 12:22:47 -07:00
Mathias Agopian
3142f4f40b update renderscript to master_gl APIs 2009-06-22 18:01:09 -07:00
Jason Sams
4b962e57a9 Cleanup includes so Log.h can use the tag. rsUtils.h is the file that should be included everywhere and contain rs global defines. 2009-06-22 17:15:15 -07:00
Jason Sams
462d11b880 checkpoint filmstrip, implemented TLS. 2009-06-19 16:03:18 -07:00
Jason Sams
5f7fc27dce Replace spins with proper pthread conditions. 2009-06-18 16:58:42 -07:00
Jason Sams
9c54bdbf45 Implement default programs and implement defaults and parents for imports. 2009-06-17 16:52:59 -07:00
Jason Sams
b37c0a5db6 Switch fountain to use ProgramVertex rather than hard coded camers in scripts. Remove camera code from scripts. 2009-06-16 17:49:58 -07:00