diff options
author | Jason Sams <rjsams@android.com> | 2009-06-17 16:52:59 -0700 |
---|---|---|
committer | Jason Sams <rjsams@android.com> | 2009-06-17 16:52:59 -0700 |
commit | 9c54bdbf458e3c9433d237ae71cf47c4ec47d852 (patch) | |
tree | 5c740a213b3ac7518184f53692191d0f3cd8cc48 /libs/rs/rsProgramVertex.cpp | |
parent | b37c0a5db65cd8b72cac6a3250faddd1aecb722e (diff) | |
download | frameworks_base-9c54bdbf458e3c9433d237ae71cf47c4ec47d852.zip frameworks_base-9c54bdbf458e3c9433d237ae71cf47c4ec47d852.tar.gz frameworks_base-9c54bdbf458e3c9433d237ae71cf47c4ec47d852.tar.bz2 |
Implement default programs and implement defaults and parents for imports.
Diffstat (limited to 'libs/rs/rsProgramVertex.cpp')
-rw-r--r-- | libs/rs/rsProgramVertex.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/libs/rs/rsProgramVertex.cpp b/libs/rs/rsProgramVertex.cpp index c24f228..19afad5 100644 --- a/libs/rs/rsProgramVertex.cpp +++ b/libs/rs/rsProgramVertex.cpp @@ -81,6 +81,23 @@ ProgramVertexState::~ProgramVertexState() delete mPV; } +void ProgramVertexState::init(Context *rsc, int32_t w, int32_t h) +{ + ProgramVertex *pv = new ProgramVertex(NULL, NULL); + Allocation *alloc = (Allocation *) + rsi_AllocationCreatePredefSized(rsc, RS_ELEMENT_USER_FLOAT, 48); + mDefaultAlloc.set(alloc); + mDefault.set(pv); + + pv->bindAllocation(0, alloc); + + Matrix m; + m.loadOrtho(0,w, h,0, -1,1); + alloc->subData(RS_PROGRAM_VERTEX_PROJECTION_OFFSET, 16, &m.m[0]); + + m.loadIdentity(); + alloc->subData(RS_PROGRAM_VERTEX_MODELVIEW_OFFSET, 16, &m.m[0]); +} namespace android { |