Changeset 410 for trunk/src/formats


Ignore:
Timestamp:
07/08/15 17:33:38 (10 years ago)
Author:
epyon
Message:
  • merge of vertex_descriptor and key_descriptor concepts - unified raw data description via data_descriptor
  • minor bugfixes
Location:
trunk/src/formats
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/formats/assimp_loader.cc

    r406 r410  
    5050};
    5151
    52 struct assimp_key_p  { float time; vec3 position; };
     52struct assimp_key_p  { float time; vec3 translation; };
    5353struct assimp_key_r  { float time; quat rotation; };
    5454struct assimp_key_s  { float time; vec3 scale; };
     
    430430        for ( unsigned np = 0; np < node->mNumPositionKeys; ++np )
    431431        {
    432                 pchannel[np].time     = static_cast<float>( node->mPositionKeys[np].mTime );
    433                 pchannel[np].position = assimp_vec3_cast(node->mPositionKeys[np].mValue);
     432                pchannel[np].time        = static_cast<float>( node->mPositionKeys[np].mTime );
     433                pchannel[np].translation = assimp_vec3_cast(node->mPositionKeys[np].mValue);
    434434        }
    435435        for ( unsigned np = 0; np < node->mNumRotationKeys; ++np )
  • trunk/src/formats/nmd_loader.cc

    r406 r410  
    4444                source.read( &stream_header, sizeof( stream_header ), 1 );
    4545                mesh_raw_channel* channel = mesh_raw_channel::create( stream_header.format, stream_header.count );
    46                 source.read( channel->data, stream_header.format.size, stream_header.count );
     46                source.read( channel->data, stream_header.format.element_size(), stream_header.count );
    4747                mesh->add_channel( channel );
    4848        }
     
    126126                                source.read( &element_header, sizeof( element_header ), 1 );
    127127                                NV_ASSERT( element_header.type == nmd_type::KEY_CHANNEL, "CHANNEL expected!" );
    128                                 nv::nmd_key_channel_header cheader;
     128                                nv::nmd_stream_header cheader;
    129129                                source.read( &cheader, sizeof( cheader ), 1 );
    130130                                key_raw_channel* channel = key_raw_channel::create( cheader.format, cheader.count );
    131                                 source.read( channel->data, channel->desc.size, channel->count );
     131                                source.read( channel->data, channel->desc.element_size(), channel->count );
    132132                                kdata->add_channel( channel );
    133133                        }
     
    191191                sheader.count  = chan->count;
    192192                stream_out.write( &sheader, sizeof( sheader ), 1 );
    193                 stream_out.write( chan->data, chan->desc.size, chan->count );
     193                stream_out.write( chan->data, chan->desc.element_size(), chan->count );
    194194        }
    195195}
     
    205205                        for ( uint32 c = 0; c < node->data->get_channel_count(); ++c )
    206206                        {
    207                                 total += sizeof( nmd_element_header ) + sizeof( nmd_key_channel_header );
     207                                total += sizeof( nmd_element_header ) + sizeof( nmd_stream_header );
    208208                                total += node->data->get_channel(c)->size();
    209209                        }
     
    230230                for ( uint32 c = 0; c < chan_count; ++c )
    231231                {
    232                         chan_size += sizeof( nmd_element_header ) + sizeof( nv::nmd_key_channel_header );
     232                        chan_size += sizeof( nmd_element_header ) + sizeof( nv::nmd_stream_header );
    233233                        chan_size += node->data->get_channel(c)->size();
    234234                }
     
    252252                        eheader.type     = nmd_type::KEY_CHANNEL;
    253253                        eheader.children = 0;
    254                         eheader.size     = sizeof( nmd_key_channel_header ) + channel->size();
     254                        eheader.size     = sizeof( nmd_stream_header ) + channel->size();
    255255                        stream_out.write( &eheader, sizeof( eheader ), 1 );
    256256
    257                         nmd_key_channel_header cheader;
     257                        nmd_stream_header cheader;
    258258                        cheader.format    = channel->desc;
    259259                        cheader.count     = channel->count;
    260260                        stream_out.write( &cheader, sizeof( cheader ), 1 );
    261                         stream_out.write( channel->data, channel->desc.size, channel->count );
     261                        stream_out.write( channel->data, channel->desc.element_size(), channel->count );
    262262                }
    263263        }
Note: See TracChangeset for help on using the changeset viewer.