Changeset 489

Show
Ignore:
Timestamp:
10/18/07 04:20:03 (10 months ago)
Author:
krobillard
Message:

Can now select raster from texture! and framebuffer!.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/thune/gl/gx_atoms.h

    r484 r489  
    11// This file is automatically generated - do not edit. 
    22 
    3 #define UR_ATOM_DRAW_LIST_OPCODES               322 
    4 #define UR_ATOM_WIDTH           323 
    5 #define UR_ATOM_HEIGHT          324 
    6 #define UR_ATOM_AREA            325 
    7 #define UR_ATOM_RECT            326 
    8 #define UR_ATOM_RASTER          327 
    9 #define UR_ATOM_TEXTURE         328 
    10 #define UR_ATOM_ELEM            329 
    11 #define UR_ATOM_CLOSE           181 
    12 #define UR_ATOM_FOCUS           330 
    13 #define UR_ATOM_RESIZE          331 
    14 #define UR_ATOM_KEY_DOWN                332 
    15 #define UR_ATOM_KEY_UP          333 
    16 #define UR_ATOM_MOUSE_MOVE              334 
    17 #define UR_ATOM_MOUSE_UP                335 
    18 #define UR_ATOM_MOUSE_DOWN              336 
    19 #define UR_ATOM_MOUSE_WHEEL             337 
    20 #define UR_ATOM_AMBIENT         338 
    21 #define UR_ATOM_DIFFUSE         339 
    22 #define UR_ATOM_SPECULAR                340 
    23 #define UR_ATOM_POS             341 
    24 #define UR_ATOM_SHADER          342 
    25 #define UR_ATOM_VERTEX          343 
    26 #define UR_ATOM_FRAGMENT                344 
    27 #define UR_ATOM_DEFAULT         345 
     3#define UR_ATOM_DRAW_LIST_OPCODES               324 
     4#define UR_ATOM_WIDTH           325 
     5#define UR_ATOM_HEIGHT          326 
     6#define UR_ATOM_AREA            327 
     7#define UR_ATOM_RECT            328 
     8#define UR_ATOM_RASTER          329 
     9#define UR_ATOM_TEXTURE         330 
     10#define UR_ATOM_ELEM            331 
     11#define UR_ATOM_CLOSE           183 
     12#define UR_ATOM_FOCUS           332 
     13#define UR_ATOM_RESIZE          333 
     14#define UR_ATOM_KEY_DOWN                334 
     15#define UR_ATOM_KEY_UP          335 
     16#define UR_ATOM_MOUSE_MOVE              336 
     17#define UR_ATOM_MOUSE_UP                337 
     18#define UR_ATOM_MOUSE_DOWN              338 
     19#define UR_ATOM_MOUSE_WHEEL             339 
     20#define UR_ATOM_AMBIENT         340 
     21#define UR_ATOM_DIFFUSE         341 
     22#define UR_ATOM_SPECULAR                342 
     23#define UR_ATOM_POS             343 
     24#define UR_ATOM_SHADER          344 
     25#define UR_ATOM_VERTEX          345 
     26#define UR_ATOM_FRAGMENT                346 
     27#define UR_ATOM_DEFAULT         347 
    2828#define UR_ATOM_WAIT            135 
    29 #define UR_ATOM_RGB             346 
    30 #define UR_ATOM_RGBA            347 
    31 #define UR_ATOM_DEPTH           348 
    32 #define UR_ATOM_CLAMP           349 
    33 #define UR_ATOM_REPEAT          350 
    34 #define UR_ATOM_NEAREST         351 
    35 #define UR_ATOM_LINEAR          352 
    36 #define UR_ATOM_MIN             353 
    37 #define UR_ATOM_MAG             354 
    38 #define UR_ATOM_MIPMAP          355 
    39 #define UR_ATOM_GRAY            356 
    40 #define UR_ATOM_RGB             346 
    41 #define UR_ATOM_RGBA            347 
    42 #define UR_ATOM_ON              261 
    43 #define UR_ATOM_OFF             263 
    44 #define UR_ATOM_ADD             200 
    45 #define UR_ATOM_BURN            357 
    46 #define UR_ATOM_COLOR           358 
    47 #define UR_ATOM_TRANS           359 
    48 #define UR_ATOM_SPRITE          360 
    49 #define UR_ATOM_ONCE            361 
    50 #define UR_ATOM_PING_PONG               362 
    51 #define UR_ATOM_PONG            363 
     29#define UR_ATOM_RGB             348 
     30#define UR_ATOM_RGBA            349 
     31#define UR_ATOM_DEPTH           350 
     32#define UR_ATOM_CLAMP           351 
     33#define UR_ATOM_REPEAT          352 
     34#define UR_ATOM_NEAREST         353 
     35#define UR_ATOM_LINEAR          354 
     36#define UR_ATOM_MIN             355 
     37#define UR_ATOM_MAG             356 
     38#define UR_ATOM_MIPMAP          357 
     39#define UR_ATOM_GRAY            358 
     40#define UR_ATOM_RGB             348 
     41#define UR_ATOM_RGBA            349 
     42#define UR_ATOM_ON              263 
     43#define UR_ATOM_OFF             265 
     44#define UR_ATOM_ADD             202 
     45#define UR_ATOM_BURN            359 
     46#define UR_ATOM_COLOR           360 
     47#define UR_ATOM_TRANS           361 
     48#define UR_ATOM_SPRITE          362 
     49#define UR_ATOM_ONCE            363 
     50#define UR_ATOM_PING_PONG               364 
     51#define UR_ATOM_PONG            365 
  • trunk/thune/gl/gx_dt.c

    r458 r489  
    566566 
    567567 
     568static void textureToRaster( UThread* ut, GLenum target, GLuint name, 
     569                             UCell* res ) 
     570{ 
     571    UBinary* bin; 
     572    GLint dim[ 2 ]; 
     573 
     574    glBindTexture( target, name ); 
     575    glGetTexLevelParameteriv( target, 0, GL_TEXTURE_WIDTH,  dim ); 
     576    glGetTexLevelParameteriv( target, 0, GL_TEXTURE_HEIGHT, dim + 1 ); 
     577 
     578    ur_makeRaster( ut, res, UR_RAST_RGB, dim[0], dim[1], &bin ); 
     579    if( bin->ptr.b ) 
     580    { 
     581        glGetTexImage( target, 0, GL_RGB, GL_UNSIGNED_BYTE, ur_rastElem(bin) ); 
     582    } 
     583} 
     584 
     585 
    568586static int select_texture( UThread* ut, UCell* val, const UCell* sel, 
    569587                           UCell* res ) 
     
    580598        else 
    581599        { 
    582             ur_setNone(res); 
     600            textureToRaster( ut, GL_TEXTURE_2D, ur_texId(val), res ); 
     601            //ur_setNone(res); 
    583602        } 
    584603        return 1; 
     
    978997    switch( ur_sel(sel) ) 
    979998    { 
    980         /* 
    981999        case UR_ATOM_RASTER: 
    982             ur_initType(res, UT_RASTER); 
    983             ur_setSeries(res, ur_fontRast(val), 0); 
     1000            textureToRaster( ut, GL_TEXTURE_2D, ur_fboTexId(val), res ); 
    9841001            break; 
    985         */ 
    9861002 
    9871003        case UR_ATOM_TEXTURE: