Exemple #1
0
//----------------------------------------------------------------------------
IndexBuffer* Visual::LoadIndexBuffer (FileIO& inFile)
{
    int numElements;
    inFile.Read(sizeof(int), &numElements);

    if (numElements > 0)
    {
        int elementSize, usage, offset;
        inFile.Read(sizeof(int), &elementSize);
        inFile.Read(sizeof(int), &usage);
        inFile.Read(sizeof(int), &offset);

        IndexBuffer* ibuffer = new0 IndexBuffer(numElements, elementSize,
                                                (Buffer::Usage)usage);
        ibuffer->SetOffset(offset);

        inFile.Read(elementSize, ibuffer->GetNumBytes()/elementSize,
                    ibuffer->GetData());

        return ibuffer;
    }

    return 0;
}