Wiki Page Content

Differences between revisions 11 and 32 (spanning 21 versions)
Revision 11 as of 2009-11-16 01:08:19
Size: 1515
Editor: SheenaSmith
Comment: minor change
Revision 32 as of 2014-12-21 21:01:03
Size: 1685
Comment: Changed description, see SGFunctions.
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
#pragma disable-camelcase #pragma camelcase off
||<tablewidth="100%"style="color:#FF0000; ;text-align:center">DRAFT ||
Line 5: Line 7:
Use this function to lock a portion of the texture for pixel access. Use this function to lock a portion of the texture for '''write-only''' pixel access.
Line 11: Line 13:
int SDL_LockTexture(SDL_TextureID textureID,
                    const SDL_Rect*  rect,
                    int markDirty
,
                    void**  pixels,
                    int*  pitch)
int SDL_LockTexture(SDL_Texture* texture,
                    const SDL_Rect* rect,
                    void** pixels,
                    int* pitch)
Line 17: Line 18:
== Function Parameters ==
||'''texture''' ||the texture to lock for access, which was created with SDL_TEXTUREACCESS_STREAMING ||
||'''rect''' ||an [[SDL_Rect]] structure representing the area to lock for access; NULL to lock the entire texture ||
||'''pixels''' ||this is filled in with a pointer to the locked pixels, appropriately offset by the locked area ||
||'''pitch''' ||this is filled in with the pitch of the locked pixels; the pitch is the length of one row in bytes ||
Line 18: Line 24:
== Function Parameters ==
||'''textureID'''||The texture to lock for access, which was created with SDL_TEXTUREACCESS_STREAMING.||
||'''rect'''||A pointer to the rectangle to lock for access. If the rect is NULL, the entire texture will be locked.||
||'''markDirty'''||If this is nonzero, the locked area will be marked dirty when the texture is unlocked.||
||'''pixels'''||This is filled in with a pointer to the locked pixels, appropriately offset by the locked area.||
||'''pitch'''||This is filled in with the pitch of the locked pixels.||
Line 26: Line 26:
0 on success, or a negative error code if the texture is not valid or was created with SDL_TEXTUREACCESS_STATIC; call [[SDL_GetError]]() for more information. Returns 0 on success or a negative error code if the texture is not valid or was not created with SDL_TEXTUREACCESS_STREAMING; call [[SDL_GetError]]() for more information.
Line 32: Line 32:
== Remarks ==
As an optimization, the pixels made available for editing don't necessarily contain the old texture data. This is a write-only operation, and if you need to keep a copy of the texture data you should do that at the application level.
Line 33: Line 35:
== Remarks ==
You can pass 0 for '''markDirty''' and then use [[SDL_DirtyTexture]]() to mark specific subareas as dirty if you don't want to mark the entire area dirty.
You must use [[SDL_UnlockTexture]]() to unlock the pixels and apply any changes.
Line 37: Line 38:
 .[[SDL_DirtyTexture]]
 .[[SDL_UnlockTexture]]
 . [[SDL_UnlockTexture]]

----
[[CategoryAPI]], [[CategoryRender]]

DRAFT

SDL_LockTexture

Use this function to lock a portion of the texture for write-only pixel access.

Syntax

int SDL_LockTexture(SDL_Texture*    texture,
                    const SDL_Rect* rect,
                    void**          pixels,
                    int*            pitch)

Function Parameters

texture

the texture to lock for access, which was created with SDL_TEXTUREACCESS_STREAMING

rect

an SDL_Rect structure representing the area to lock for access; NULL to lock the entire texture

pixels

this is filled in with a pointer to the locked pixels, appropriately offset by the locked area

pitch

this is filled in with the pitch of the locked pixels; the pitch is the length of one row in bytes

Return Value

Returns 0 on success or a negative error code if the texture is not valid or was not created with SDL_TEXTUREACCESS_STREAMING; call SDL_GetError() for more information.

Code Examples

You can add your code example here

Remarks

As an optimization, the pixels made available for editing don't necessarily contain the old texture data. This is a write-only operation, and if you need to keep a copy of the texture data you should do that at the application level.

You must use SDL_UnlockTexture() to unlock the pixels and apply any changes.


CategoryAPI, CategoryRender

None: SDL_LockTexture (last edited 2014-12-21 21:01:03 by PhilippWiesemann)

(Page Info.)
Feedback
Please include your contact information if you'd like to receive a reply.
Submit