Changeset 534 for trunk/src/formats/obj_loader.cc
- Timestamp:
- 01/12/17 14:41:17 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/formats/obj_loader.cc
r482 r534 1 // Copyright (C) 2012-201 5ChaosForge Ltd1 // Copyright (C) 2012-2017 ChaosForge Ltd 2 2 // http://chaosforge.org/ 3 3 // … … 52 52 string32 next_name; 53 53 54 nv::size_tsize;54 uint32 size; 55 55 bool eof; 56 56 57 57 obj_reader(); 58 58 bool read_stream( stream& str ); 59 virtual nv::size_t add_face( uint32* vi, uint32* ti, uint32* ni, nv::size_tcount ) = 0;60 virtual nv::size_traw_size() const = 0;59 virtual uint32 add_face( uint32* vi, uint32* ti, uint32* ni, uint32 count ) = 0; 60 virtual uint32 raw_size() const = 0; 61 61 virtual void reset() = 0; 62 62 virtual const uint8* raw_pointer() const = 0; … … 126 126 string_view scan( cline ); 127 127 scan.remove_prefix( 2 ); 128 size_tpos = 0;128 uint32 pos = 0; 129 129 while ( pos != string_view::npos ) 130 130 { … … 176 176 { 177 177 mesh_data_reader( bool normals ) : m_normals( normals ) {} 178 virtual nv::size_t add_face( uint32* vi, uint32* ti, uint32* ni, nv::size_tcount )178 virtual uint32 add_face( uint32* vi, uint32* ti, uint32* ni, uint32 count ) 179 179 { 180 180 if ( count < 3 ) return 0; // TODO : report error? … … 182 182 // TODO : support if normals not present; 183 183 vec3 nullvec; 184 nv::size_tresult = 0;184 uint32 result = 0; 185 185 // Simple triangulation - obj's shouldn't have more than quads anyway 186 186 187 187 if ( m_normals ) 188 188 { 189 for ( nv::size_ti = 2; i < count; ++i )189 for ( uint32 i = 2; i < count; ++i ) 190 190 { 191 191 result++; … … 197 197 else 198 198 { 199 for ( nv::size_ti = 2; i < count; ++i )199 for ( uint32 i = 2; i < count; ++i ) 200 200 { 201 201 result++; … … 210 210 vector< VTX > m_data; 211 211 virtual void reset() { m_data.clear(); } 212 virtual nv::size_traw_size() const { return m_data.size() * sizeof( VTX ); }212 virtual uint32 raw_size() const { return m_data.size() * sizeof( VTX ); } 213 213 virtual const uint8* raw_pointer() const { return reinterpret_cast< const uint8* >( m_data.data() ); } 214 214 }; … … 232 232 void calculate_tangents() 233 233 { 234 nv::size_tcount = m_data.size();235 nv::size_ttcount = count / 3;234 uint32 count = m_data.size(); 235 uint32 tcount = count / 3; 236 236 237 237 vector< vec3 > tan1( count ); 238 238 vector< vec3 > tan2( count ); 239 239 240 for ( nv::size_ta = 0; a < tcount; ++a )241 { 242 nv::size_ti1 = a * 3;243 nv::size_ti2 = a * 3 + 1;244 nv::size_ti3 = a * 3 + 2;240 for ( uint32 a = 0; a < tcount; ++a ) 241 { 242 uint32 i1 = a * 3; 243 uint32 i2 = a * 3 + 1; 244 uint32 i3 = a * 3 + 2; 245 245 obj_vertex_vtnt& vtx1 = m_data[ i1 ]; 246 246 obj_vertex_vtnt& vtx2 = m_data[ i2 ]; … … 277 277 } 278 278 279 for ( nv::size_ta = 0; a < count; ++a )279 for ( uint32 a = 0; a < count; ++a ) 280 280 { 281 281 const vec3& nv = m_data[a].normal; … … 347 347 } 348 348 349 data_channel_set* nv::obj_loader::release_mesh_data( size_tindex, data_node_info& info )349 data_channel_set* nv::obj_loader::release_mesh_data( uint32 index, data_node_info& info ) 350 350 { 351 351 data_channel_set* result = m_meshes[ index ];
Note: See TracChangeset
for help on using the changeset viewer.