VirtualBox

Changeset 47602 in vbox for trunk


Ignore:
Timestamp:
Aug 7, 2013 7:35:01 PM (11 years ago)
Author:
vboxsync
Message:

crOpenGL: allow non-inverted textures for TexPresent

Location:
trunk/src/VBox/HostServices/SharedOpenGL/crserverlib
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/HostServices/SharedOpenGL/crserverlib/server.h

    r47599 r47602  
    419419
    420420void CrDpResize(PCR_DISPLAY pDisplay, int32_t xPos, int32_t yPos, uint32_t width, uint32_t height);
    421 void CrDpEntryInit(PCR_DISPLAY_ENTRY pEntry, const VBOXVR_TEXTURE *pTextureData);
     421void CrDpEntryInit(PCR_DISPLAY_ENTRY pEntry, const VBOXVR_TEXTURE *pTextureData, uint32_t fFlags);
    422422void CrDpEntryCleanup(PCR_DISPLAY pDisplay, PCR_DISPLAY_ENTRY pEntry);
    423423int CrDpEntryRegionsSet(PCR_DISPLAY pDisplay, PCR_DISPLAY_ENTRY pEntry, const RTPOINT *pPos, uint32_t cRegions, const RTRECT *paRegions);
     
    438438int CrDemInit(PCR_DISPLAY_ENTRY_MAP pMap);
    439439void CrDemTerm(PCR_DISPLAY_ENTRY_MAP pMap);
    440 PCR_DISPLAY_ENTRY CrDemEntryAcquire(PCR_DISPLAY_ENTRY_MAP pMap, GLuint idTexture);
     440PCR_DISPLAY_ENTRY CrDemEntryAcquire(PCR_DISPLAY_ENTRY_MAP pMap, GLuint idTexture, uint32_t fFlags);
    441441void CrDemEntryRelease(PCR_DISPLAY_ENTRY pEntry);
    442442int CrDemEntrySaveState(PCR_DISPLAY_ENTRY pEntry, PSSMHANDLE pSSM);
  • trunk/src/VBox/HostServices/SharedOpenGL/crserverlib/server_presenter.cpp

    r47599 r47602  
    276276}
    277277
    278 void CrDpEntryInit(PCR_DISPLAY_ENTRY pEntry, const VBOXVR_TEXTURE *pTextureData)
     278void CrDpEntryInit(PCR_DISPLAY_ENTRY pEntry, const VBOXVR_TEXTURE *pTextureData, uint32_t fFlags)
    279279{
    280280    CrVrScrCompositorEntryInit(&pEntry->CEntry, pTextureData, crDpEntryCEntryReleaseCB);
    281     CrVrScrCompositorEntryFlagsSet(&pEntry->CEntry, CRBLT_F_INVERT_SRC_YCOORDS);
     281    CrVrScrCompositorEntryFlagsSet(&pEntry->CEntry, fFlags);
    282282    CrVrScrCompositorEntryInit(&pEntry->RootVrCEntry, pTextureData, NULL);
    283     CrVrScrCompositorEntryFlagsSet(&pEntry->RootVrCEntry, CRBLT_F_INVERT_SRC_YCOORDS);
     283    CrVrScrCompositorEntryFlagsSet(&pEntry->RootVrCEntry, fFlags);
    284284}
    285285
     
    447447    AssertRCReturn(rc, rc);
    448448
    449     PCR_DISPLAY_ENTRY pEntry = CrDemEntryAcquire(pMap, u32);
     449    PCR_DISPLAY_ENTRY pEntry = CrDemEntryAcquire(pMap, u32, CRBLT_F_INVERT_SRC_YCOORDS);
    450450    if (!pEntry)
    451451    {
     
    458458}
    459459
    460 PCR_DISPLAY_ENTRY CrDemEntryAcquire(PCR_DISPLAY_ENTRY_MAP pMap, GLuint idTexture)
     460PCR_DISPLAY_ENTRY CrDemEntryAcquire(PCR_DISPLAY_ENTRY_MAP pMap, GLuint idTexture, uint32_t fFlags)
    461461{
    462462    CR_DEM_ENTRY *pDemEntry = NULL;
     
    501501    }
    502502
    503     CrDpEntryInit(&pDemEntry->Entry, &TextureData);
     503    CrDpEntryInit(&pDemEntry->Entry, &TextureData, fFlags);
    504504
    505505    CR_DEM_ENTRY_INFO *pInfo = (CR_DEM_ENTRY_INFO*)crHashtableSearch(pMap->pTexIdToDemInfoMap, pTobj->id);
     
    814814    if (texture)
    815815    {
    816         pEntry = CrDemEntryAcquire(&cr_server.PresentTexturepMap, texture);
     816        pEntry = CrDemEntryAcquire(&cr_server.PresentTexturepMap, texture, (cfg & CR_PRESENT_FLAG_TEX_NONINVERT_YCOORD) ? 0 : CRBLT_F_INVERT_SRC_YCOORDS);
    817817        if (!pEntry)
    818818        {
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette