Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Feb 28, 2019, 2:30:40 PM (6 years ago)
Author:
merholzl
Message:

Shader merge

Location:
code/branches/mergeFS18
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • code/branches/mergeFS18

  • code/branches/mergeFS18/src/libraries/tools/Mesh.cc

    r11783 r12197  
    3535#include <OgreSubEntity.h>
    3636#include <OgreSceneManager.h>
     37#include <OgreHardwareVertexBuffer.h>
    3738
    3839#include "util/Convert.h"
     
    6465            this->scenemanager_->destroyEntity(this->entity_);
    6566
     67
    6668        if (GameMode::showsGraphics())
    6769        {
     
    7072                this->entity_ = this->scenemanager_->createEntity("Mesh" + multi_cast<std::string>(Mesh::meshCounter_s++), meshsource);
    7173                this->entity_->setCastShadows(this->bCastShadows_);
    72             }
    73             catch (...)
     74
     75
     76                unsigned short src, dest;
     77                try
     78                {
     79                    if (!this->entity_->getMesh()->suggestTangentVectorBuildParams(Ogre::VertexElementSemantic::VES_TANGENT, src, dest))
     80                    {
     81                        orxout() << "Generate Tanget for \"" << meshsource << '"' << endl;
     82                        this->entity_->getMesh()->buildTangentVectors(Ogre::VertexElementSemantic::VES_TANGENT, src, dest);
     83                        // this version cleans mirrored and rotated UVs but requires quality models
     84                        // mesh->buildTangentVectors(VES_TANGENT, src, dest, true, true);
     85                    }
     86                } catch (...)
     87                {
     88                    orxout(internal_warning) << "Couldn't generat tangets for \"" << meshsource << '"' << endl;
     89                }
     90
     91            } catch (...)
    7492            {
    7593                orxout(internal_error) << "Couldn't load mesh \"" << meshsource << '"' << endl;
     
    107125                this->entity_->getSubEntity(index)->setMaterialName(name);
    108126        }
    109         else 
     127        else
    110128            orxout() << "ERROR at Index " << index << endl;
    111129    }
Note: See TracChangeset for help on using the changeset viewer.