minor tweaks

This commit is contained in:
Garux
2025-09-04 16:01:47 +05:00
parent 911a7cceeb
commit d7f3e9bd3f
74 changed files with 594 additions and 732 deletions
+2 -2
View File
@@ -104,8 +104,8 @@ public:
}
~PakArchive(){
for ( PakFileSystem::iterator i = m_filesystem.begin(); i != m_filesystem.end(); ++i )
delete i->second.file();
for ( auto& [ path, entry ] : m_filesystem )
delete entry.file();
}
void release() override {
+2 -2
View File
@@ -158,8 +158,8 @@ public:
return;
}
for ( files_t::iterator i = m_files.begin(); i != m_files.end(); ++i )
visitor.file( i->first.c_str() );
for ( const auto& [ name, wad ] : m_files )
visitor.file( name.c_str() );
}
};
+2 -2
View File
@@ -203,9 +203,9 @@ public:
}
}
~ZipArchive(){
for ( ZipFileSystem::iterator i = m_filesystem.begin(); i != m_filesystem.end(); ++i )
for ( auto& [ path, entry ] : m_filesystem )
{
delete i->second.file();
delete entry.file();
}
}
+22 -22
View File
@@ -63,9 +63,9 @@ public:
void lightsChanged() const override {
}
void forEachLight( const RendererLightCallback& callback ) const override {
for ( Lights::const_iterator i = m_lights.begin(); i != m_lights.end(); ++i )
for ( const auto *light : m_lights )
{
callback( *( *i ) );
callback( *light );
}
}
};
@@ -129,12 +129,12 @@ public:
gl().glBegin( GL_LINES );
for ( Array<ArbitraryMeshVertex>::const_iterator i = m_vertices.begin(); i != m_vertices.end(); ++i )
for ( const auto& v : m_vertices )
{
Vector3 normal = normal3f_to_vector3( ( *i ).normal );
Vector3 normal = normal3f_to_vector3( v.normal );
normal = matrix4_transformed_direction( modelview_inv, vector3_normalised( matrix4_transformed_direction( modelview_inv_transposed, normal ) ) ); // do some magic
Vector3 normalTransformed = vector3_added( vertex3f_to_vector3( ( *i ).vertex ), vector3_scaled( normal, 8 ) );
gl().glVertex3fv( vertex3f_to_array( ( *i ).vertex ) );
Vector3 normalTransformed = vector3_added( vertex3f_to_vector3( v.vertex ), vector3_scaled( normal, 8 ) );
gl().glVertex3fv( vertex3f_to_array( v.vertex ) );
gl().glVertex3fv( vector3_to_array( normalTransformed ) );
}
gl().glEnd();
@@ -199,10 +199,10 @@ private:
ArbitraryMeshTriangle_sumTangents( a, b, c );
}
for ( Array<ArbitraryMeshVertex>::iterator i = m_vertices.begin(); i != m_vertices.end(); ++i )
for ( auto& v : m_vertices )
{
vector3_normalise( reinterpret_cast<Vector3&>( ( *i ).tangent ) );
vector3_normalise( reinterpret_cast<Vector3&>( ( *i ).bitangent ) );
vector3_normalise( reinterpret_cast<Vector3&>( v.tangent ) );
vector3_normalise( reinterpret_cast<Vector3&>( v.bitangent ) );
}
}
@@ -350,9 +350,9 @@ private:
Array<RenderIndex>::iterator j = m_indices.begin();
for ( RenderIndex* i = indices; i != indices + ( sizeof( indices ) / sizeof( RenderIndex ) ); ++i )
for ( auto i : indices )
{
*j++ = *i;
*j++ = i;
}
m_shader = "";
@@ -382,8 +382,8 @@ public:
CopyPicoModel( scene, scene.m_scene->mRootNode );
}
~PicoModel(){
for ( surfaces_t::iterator i = m_surfaces.begin(); i != m_surfaces.end(); ++i )
delete *i;
for ( auto *surf : m_surfaces )
delete surf;
}
typedef surfaces_t::const_iterator const_iterator;
@@ -416,10 +416,10 @@ public:
}
void testSelect( Selector& selector, SelectionTest& test, const Matrix4& localToWorld ){
for ( surfaces_t::iterator i = m_surfaces.begin(); i != m_surfaces.end(); ++i )
for ( auto *surf : m_surfaces )
{
if ( ( *i )->intersectVolume( test.getVolume(), localToWorld ) != c_volumeOutside ) {
( *i )->testSelect( selector, test, localToWorld );
if ( surf->intersectVolume( test.getVolume(), localToWorld ) != c_volumeOutside ) {
surf->testSelect( selector, test, localToWorld );
}
}
}
@@ -531,11 +531,11 @@ public:
}
void destroyRemaps(){
ASSERT_MESSAGE( m_skins.size() == m_picomodel.size(), "ERROR" );
for ( SurfaceRemaps::iterator i = m_skins.begin(); i != m_skins.end(); ++i )
for ( auto& [ name, shader ] : m_skins )
{
if ( ( *i ).second != 0 ) {
GlobalShaderCache().release( ( *i ).first.c_str() );
( *i ).second = 0;
if ( shader != 0 ) {
GlobalShaderCache().release( name.c_str() );
shader = 0;
}
}
}
@@ -605,9 +605,9 @@ public:
}
}
void clearLights() override {
for ( SurfaceLightLists::iterator i = m_surfaceLightLists.begin(); i != m_surfaceLightLists.end(); ++i )
for ( auto& light : m_surfaceLightLists )
{
( *i ).clear();
light.clear();
}
}
};
+19 -25
View File
@@ -47,9 +47,9 @@ inline void plotBasisFunction( std::size_t numSegments, int point, int degree ){
KnotVector_openUniform( knots, 4, degree );
globalOutputStream() << "plotBasisFunction point " << point << " of 4, knot vector:";
for ( Knots::iterator i = knots.begin(); i != knots.end(); ++i )
for ( auto knot : knots )
{
globalOutputStream() << ' ' << *i;
globalOutputStream() << ' ' << knot;
}
globalOutputStream() << '\n';
globalOutputStream() << "t=0 basis=" << BSpline_basis( knots, point, degree, 0.0 ) << '\n';
@@ -77,11 +77,11 @@ inline bool ControlPoints_parse( ControlPoints& controlPoints, const char* value
if ( !string_equal( tokeniser.getToken(), "(" ) ) {
return false;
}
for ( ControlPoints::iterator i = controlPoints.begin(); i != controlPoints.end(); ++i )
for ( auto& cp : controlPoints )
{
if ( !string_parse_float( tokeniser.getToken(), ( *i ).x() )
|| !string_parse_float( tokeniser.getToken(), ( *i ).y() )
|| !string_parse_float( tokeniser.getToken(), ( *i ).z() ) ) {
if ( !string_parse_float( tokeniser.getToken(), cp.x() )
|| !string_parse_float( tokeniser.getToken(), cp.y() )
|| !string_parse_float( tokeniser.getToken(), cp.z() ) ) {
return false;
}
}
@@ -93,9 +93,9 @@ inline bool ControlPoints_parse( ControlPoints& controlPoints, const char* value
inline void ControlPoints_write( const ControlPoints& controlPoints, StringOutputStream& value ){
value << controlPoints.size() << " (";
for ( ControlPoints::const_iterator i = controlPoints.begin(); i != controlPoints.end(); ++i )
for ( const auto& cp : controlPoints )
{
value << ' ' << ( *i ).x() << ' ' << ( *i ).y() << ' ' << ( *i ).z() << ' ';
value << ' ' << cp.x() << ' ' << cp.y() << ' ' << cp.z() << ' ';
}
value << ')';
}
@@ -169,9 +169,9 @@ public:
}
template<typename Functor>
const Functor& forEach( const Functor& functor ) const {
for ( ControlPoints::const_iterator i = m_controlPoints.begin(); i != m_controlPoints.end(); ++i )
for ( const auto& control : m_controlPoints )
{
functor( *i );
functor( control );
}
return functor;
}
@@ -186,18 +186,12 @@ public:
}
bool isSelected() const {
for ( Selectables::const_iterator i = m_selectables.begin(); i != m_selectables.end(); ++i )
{
if ( ( *i ).isSelected() ) {
return true;
}
}
return false;
return std::ranges::any_of( m_selectables, std::identity{}, &ObservedSelectable::isSelected );
}
void setSelected( bool selected ){
for ( Selectables::iterator i = m_selectables.begin(); i != m_selectables.end(); ++i )
for ( auto& selectable : m_selectables )
{
( *i ).setSelected( selected );
selectable.setSelected( selected );
}
}
@@ -304,9 +298,9 @@ public:
tesselate();
m_bounds = AABB();
for ( ControlPoints::iterator i = m_controlPointsTransformed.begin(); i != m_controlPointsTransformed.end(); ++i )
for ( const auto& control : m_controlPointsTransformed )
{
aabb_extend_by_point_safe( m_bounds, ( *i ) );
aabb_extend_by_point_safe( m_bounds, control );
}
m_boundsChanged();
@@ -319,9 +313,9 @@ public:
}
m_weights.resize( m_controlPoints.size() );
for ( NURBSWeights::iterator i = m_weights.begin(); i != m_weights.end(); ++i )
for ( auto& weight : m_weights )
{
( *i ) = 1;
weight = 1;
}
KnotVector_openUniform( m_knots, m_controlPoints.size(), NURBS_degree );
@@ -392,9 +386,9 @@ public:
tesselate();
m_bounds = AABB();
for ( ControlPoints::iterator i = m_controlPointsTransformed.begin(); i != m_controlPointsTransformed.end(); ++i )
for ( const auto& control : m_controlPointsTransformed )
{
aabb_extend_by_point_safe( m_bounds, ( *i ) );
aabb_extend_by_point_safe( m_bounds, control );
}
m_boundsChanged();
+1 -7
View File
@@ -57,11 +57,5 @@ void add_entity_filter( EntityFilter& filter, int mask, bool invert ){
}
bool entity_filtered( Entity& entity ){
for ( EntityFilters::iterator i = g_entityFilters.begin(); i != g_entityFilters.end(); ++i )
{
if ( ( *i ).active() && ( *i ).filter( entity ) ) {
return true;
}
}
return false;
return std::ranges::any_of( g_entityFilters, [&entity]( EntityFilterWrapper& f ){ return f.active() && f.filter( entity ); } );
}
+2 -2
View File
@@ -41,9 +41,9 @@ public:
m_callbacks.erase( callback );
}
void changed( const char* name ) const {
for ( NameCallbacks::const_iterator i = m_callbacks.begin(); i != m_callbacks.end(); ++i )
for ( const auto& cb : m_callbacks )
{
( *i )( name );
cb( name );
}
}
};
+6 -6
View File
@@ -87,9 +87,9 @@ public:
return "";
}
void forEachRemap( const SkinRemapCallback& callback ) const {
for ( Remaps::const_iterator i = m_remaps.begin(); i != m_remaps.end(); ++i )
for ( const auto& [ from, to ] : m_remaps )
{
callback( SkinRemap( ( *i ).first.c_str(), ( *i ).second.c_str() ) );
callback( SkinRemap( from.c_str(), to.c_str() ) );
}
}
};
@@ -270,16 +270,16 @@ public:
void realise() override {
g_skins.realise();
m_realised = true;
for ( Cache::iterator i = m_cache.begin(); i != m_cache.end(); ++i )
for ( auto& skin : m_cache )
{
( *i ).value->realise( ( *i ).key.c_str() );
skin.value->realise( skin.key.c_str() );
}
}
void unrealise() override {
m_realised = false;
for ( Cache::iterator i = m_cache.begin(); i != m_cache.end(); ++i )
for ( auto& skin : m_cache )
{
( *i ).value->unrealise();
skin.value->unrealise();
}
g_skins.unrealise();
}
+7 -7
View File
@@ -157,9 +157,9 @@ public:
template<typename Functor>
void TargetingEntity_forEach( const TargetingEntity& targets, const Functor& functor ){
for ( TargetingEntity::iterator i = targets.begin(); i != targets.end(); ++i )
for ( const auto *targetable : targets )
{
functor( ( *i )->world_position() );
functor( targetable->world_position() );
}
}
@@ -167,9 +167,9 @@ typedef std::map<std::size_t, TargetingEntity> TargetingEntities;
template<typename Functor>
void TargetingEntities_forEach( const TargetingEntities& targetingEntities, const Functor& functor ){
for ( TargetingEntities::const_iterator i = targetingEntities.begin(); i != targetingEntities.end(); ++i )
for ( const auto& [ index, entity ] : targetingEntities )
{
TargetingEntity_forEach( ( *i ).second, functor );
TargetingEntity_forEach( entity, functor );
}
}
@@ -433,10 +433,10 @@ public:
void renderSolid( Renderer& renderer, const VolumeTest& volume ) const override {
if( g_showConnections ){
for ( TargetableInstances::const_iterator i = m_instances.begin(); i != m_instances.end(); ++i )
for ( const auto *instance : m_instances )
{
if ( ( *i )->path().top().get().visible() ) {
( *i )->render( renderer, volume );
if ( instance->path().top().get().visible() ) {
instance->render( renderer, volume );
}
}
}
+2 -2
View File
@@ -137,9 +137,9 @@ NodeSmartReference g_nullNode( NewNullNode() );
NodeSmartReference Entity_create( EntityCreator& entityTable, EntityClass* entityClass, const KeyValues& keyValues ){
scene::Node& entity( entityTable.createEntity( entityClass ) );
for ( KeyValues::const_iterator i = keyValues.begin(); i != keyValues.end(); ++i )
for ( const auto& [ key, value ] : keyValues )
{
Node_getEntity( entity )->setKeyValue( ( *i ).first.c_str(), ( *i ).second.c_str() );
Node_getEntity( entity )->setKeyValue( key.c_str(), value.c_str() );
}
return NodeSmartReference( entity );
}
+1 -7
View File
@@ -573,13 +573,7 @@ int g_vmf_entities;
int g_vmf_brushes;
inline VMFBlock::const_iterator VMFBlock_find( const VMFBlock& block, const char* name ){
for ( VMFBlock::const_iterator i = block.begin(); i != block.end(); ++i )
{
if ( string_equal( name, ( *i )->name() ) ) {
return i;
}
}
return block.end();
return std::ranges::find_if( block, [name]( const VMFBlock *block ){ return string_equal( name, block->name() ); } );
}
void VMF_parseBlock( Tokeniser& tokeniser, const VMFBlock& block ){
+4 -4
View File
@@ -205,16 +205,16 @@ void MD2Surface_read( Model& model, const byte* buffer, ArchiveFile& file ){
surface.indices().reserve( header.num_tris * 3 );
Array<md2XyzNormal_t> md2Xyz( header.num_xyz );
for ( Array<md2XyzNormal_t>::iterator i = md2Xyz.begin(); i != md2Xyz.end(); ++i )
for ( auto& xyzn : md2Xyz )
{
istream_read_md2XyzNormal( frameStream, *i );
istream_read_md2XyzNormal( frameStream, xyzn );
}
Array<md2St_t> md2St( header.num_st );
PointerInputStream stStream( buffer + header.ofs_st );
for ( Array<md2St_t>::iterator i = md2St.begin(); i != md2St.end(); ++i )
for ( auto& st : md2St )
{
istream_read_md2St( stStream, *i );
istream_read_md2St( stStream, st );
}
UniqueVertexBuffer<ArbitraryMeshVertex> inserter( surface.vertices() );
+10 -13
View File
@@ -30,7 +30,7 @@
#include "model.h"
//#define MD5_RETURN_FALSE_IF_FAIL( expression ) if ( !( expression ) ) { globalErrorStream() << "md5 parse failed: " # expression "\n"; return false; } else
#define MD5_RETURN_FALSE_IF_FAIL( expression ) do{ if ( !( expression ) ) { globalErrorStream() << "md5 parse failed: " # expression "\n"; return false; } }while( 0 )
#define MD5_RETURN_FALSE_IF_FAIL( expression ) do{ if ( !( expression ) ) { globalErrorStream() << "md5 parse failed: " # expression "\n"; return false; } }while( false )
bool MD5_parseToken( Tokeniser& tokeniser, const char* string ){
const char* token = tokeniser.getToken();
@@ -281,14 +281,14 @@ bool MD5Model_parse( Model& model, Tokeniser& tokeniser ){
MD5_RETURN_FALSE_IF_FAIL( MD5_parseToken( tokeniser, "{" ) );
tokeniser.nextLine();
for ( MD5Joints::iterator i = joints.begin(); i != joints.end(); ++i )
for ( auto& joint : joints )
{
const char* jointName;
MD5_RETURN_FALSE_IF_FAIL( MD5_parseString( tokeniser, jointName ) );
MD5_RETURN_FALSE_IF_FAIL( MD5_parseInteger( tokeniser, ( *i ).parent ) );
MD5_RETURN_FALSE_IF_FAIL( MD5_parseVector3( tokeniser, ( *i ).position ) );
MD5_RETURN_FALSE_IF_FAIL( MD5_parseVector3( tokeniser, ( *i ).rotation.vec3() ) );
( *i ).rotation.w() = -static_cast<float>( sqrt( 1.0f - ( float_squared( ( *i ).rotation.x() ) + float_squared( ( *i ).rotation.y() ) + float_squared( ( *i ).rotation.z() ) ) ) );
MD5_RETURN_FALSE_IF_FAIL( MD5_parseInteger( tokeniser, joint.parent ) );
MD5_RETURN_FALSE_IF_FAIL( MD5_parseVector3( tokeniser, joint.position ) );
MD5_RETURN_FALSE_IF_FAIL( MD5_parseVector3( tokeniser, joint.rotation.vec3() ) );
joint.rotation.w() = -static_cast<float>( sqrt( 1.0f - ( float_squared( joint.rotation.x() ) + float_squared( joint.rotation.y() ) + float_squared( joint.rotation.z() ) ) ) );
tokeniser.nextLine();
}
@@ -369,10 +369,8 @@ bool MD5Model_parse( Model& model, Tokeniser& tokeniser ){
MD5_RETURN_FALSE_IF_FAIL( MD5_parseToken( tokeniser, "}" ) );
tokeniser.nextLine();
for ( MD5Verts::iterator j = verts.begin(); j != verts.end(); ++j )
for ( const auto& vert : verts )
{
MD5Vert& vert = ( *j );
Vector3 skinned( 0, 0, 0 );
for ( std::size_t k = 0; k != vert.weight_count; ++k )
{
@@ -385,9 +383,8 @@ bool MD5Model_parse( Model& model, Tokeniser& tokeniser ){
surface.vertices().push_back( ArbitraryMeshVertex( vertex3f_for_vector3( skinned ), Normal3f( 0, 0, 0 ), TexCoord2f( vert.u, vert.v ) ) );
}
for ( MD5Tris::iterator j = tris.begin(); j != tris.end(); ++j )
for ( const auto& tri : tris )
{
MD5Tri& tri = ( *j );
surface.indices().insert( RenderIndex( tri.a ) );
surface.indices().insert( RenderIndex( tri.b ) );
surface.indices().insert( RenderIndex( tri.c ) );
@@ -409,9 +406,9 @@ bool MD5Model_parse( Model& model, Tokeniser& tokeniser ){
reinterpret_cast<Vector3&>( c.normal ) += weightedNormal;
}
for ( Surface::vertices_t::iterator j = surface.vertices().begin(); j != surface.vertices().end(); ++j )
for ( auto& v : surface.vertices() )
{
vector3_normalise( reinterpret_cast<Vector3&>( ( *j ).normal ) );
vector3_normalise( reinterpret_cast<Vector3&>( v.normal ) );
}
surface.updateAABB();
+18 -18
View File
@@ -130,20 +130,20 @@ void MDLSurface_read( Surface& surface, const byte* buffer, const char* name ){
}
Array<mdlSt_t> mdlSts( header.numverts );
for ( Array<mdlSt_t>::iterator i = mdlSts.begin(); i != mdlSts.end(); ++i )
for ( auto& st : mdlSts )
{
( *i ).onseam = istream_read_int32_le( inputStream );
( *i ).s = istream_read_int32_le( inputStream );
( *i ).t = istream_read_int32_le( inputStream );
st.onseam = istream_read_int32_le( inputStream );
st.s = istream_read_int32_le( inputStream );
st.t = istream_read_int32_le( inputStream );
}
Array<mdlTriangle_t> mdlTriangles( header.numtris );
for ( Array<mdlTriangle_t>::iterator i = mdlTriangles.begin(); i != mdlTriangles.end(); ++i )
for ( auto& tri : mdlTriangles )
{
( *i ).facesfront = istream_read_int32_le( inputStream );
( *i ).vertindex[0] = istream_read_int32_le( inputStream );
( *i ).vertindex[1] = istream_read_int32_le( inputStream );
( *i ).vertindex[2] = istream_read_int32_le( inputStream );
tri.facesfront = istream_read_int32_le( inputStream );
tri.vertindex[0] = istream_read_int32_le( inputStream );
tri.vertindex[1] = istream_read_int32_le( inputStream );
tri.vertindex[2] = istream_read_int32_le( inputStream );
}
{
@@ -167,10 +167,10 @@ void MDLSurface_read( Surface& surface, const byte* buffer, const char* name ){
}
Array<mdlXyzNormal_t> mdlXyzNormals( header.numverts );
for ( Array<mdlXyzNormal_t>::iterator i = mdlXyzNormals.begin(); i != mdlXyzNormals.end(); ++i )
for ( auto& norm : mdlXyzNormals )
{
inputStream.read( ( *i ).v, 3 );
inputStream.read( &( *i ).lightnormalindex, 1 );
inputStream.read( norm.v, 3 );
inputStream.read( &norm.lightnormalindex, 1 );
}
{
@@ -178,20 +178,20 @@ void MDLSurface_read( Surface& surface, const byte* buffer, const char* name ){
{
UniqueVertexBuffer<mdlVertex_t> inserter( mdl_vertices );
for ( Array<mdlTriangle_t>::iterator i = mdlTriangles.begin(); i != mdlTriangles.end(); ++i )
for ( const auto& tri : mdlTriangles )
{
surface.indices().insert( inserter.insert( mdlVertex_t( ( *i ).vertindex[0], ( *i ).facesfront ) ) );
surface.indices().insert( inserter.insert( mdlVertex_t( ( *i ).vertindex[1], ( *i ).facesfront ) ) );
surface.indices().insert( inserter.insert( mdlVertex_t( ( *i ).vertindex[2], ( *i ).facesfront ) ) );
surface.indices().insert( inserter.insert( mdlVertex_t( tri.vertindex[0], tri.facesfront ) ) );
surface.indices().insert( inserter.insert( mdlVertex_t( tri.vertindex[1], tri.facesfront ) ) );
surface.indices().insert( inserter.insert( mdlVertex_t( tri.vertindex[2], tri.facesfront ) ) );
}
}
{
surface.vertices().reserve( mdl_vertices.size() );
for ( VertexBuffer<mdlVertex_t>::iterator i = mdl_vertices.begin(); i != mdl_vertices.end(); ++i )
for ( const auto& v : mdl_vertices )
{
surface.vertices().push_back( MDLVertex_construct( header, mdlXyzNormals[( *i ).m_vertindex], mdlSts[( *i ).m_vertindex], ( *i ).m_facesfront == MDL_FACES_FRONT ) );
surface.vertices().push_back( MDLVertex_construct( header, mdlXyzNormals[v.m_vertindex], mdlSts[v.m_vertindex], v.m_facesfront == MDL_FACES_FRONT ) );
}
}
}
+23 -23
View File
@@ -53,9 +53,9 @@ public:
void lightsChanged() const override {
}
void forEachLight( const RendererLightCallback& callback ) const override {
for ( Lights::const_iterator i = m_lights.begin(); i != m_lights.end(); ++i )
for ( const auto *light : m_lights )
{
callback( *( *i ) );
callback( *light );
}
}
};
@@ -121,8 +121,8 @@ public:
}
void updateAABB(){
m_aabb_local = AABB();
for ( vertices_t::iterator i = m_vertices.begin(); i != m_vertices.end(); ++i )
aabb_extend_by_point_safe( m_aabb_local, reinterpret_cast<const Vector3&>( ( *i ).vertex ) );
for ( const auto& v : m_vertices )
aabb_extend_by_point_safe( m_aabb_local, reinterpret_cast<const Vector3&>( v.vertex ) );
@@ -135,10 +135,10 @@ public:
ArbitraryMeshTriangle_sumTangents( a, b, c );
}
for ( Surface::vertices_t::iterator i = m_vertices.begin(); i != m_vertices.end(); ++i )
for ( auto& v : m_vertices )
{
vector3_normalise( reinterpret_cast<Vector3&>( ( *i ).tangent ) );
vector3_normalise( reinterpret_cast<Vector3&>( ( *i ).bitangent ) );
vector3_normalise( reinterpret_cast<Vector3&>( v.tangent ) );
vector3_normalise( reinterpret_cast<Vector3&>( v.bitangent ) );
}
}
@@ -171,10 +171,10 @@ public:
#if defined( _DEBUG ) && !defined( _DEBUG_QUICKER )
gl().glBegin( GL_LINES );
for ( VertexBuffer<ArbitraryMeshVertex>::const_iterator i = m_vertices.begin(); i != m_vertices.end(); ++i )
for ( const auto& v : m_vertices )
{
Vector3 normal = vector3_added( vertex3f_to_vector3( ( *i ).vertex ), vector3_scaled( normal3f_to_vector3( ( *i ).normal ), 8 ) );
gl().glVertex3fv( vertex3f_to_array( ( *i ).vertex ) );
Vector3 normal = vector3_added( vertex3f_to_vector3( v.vertex ), vector3_scaled( normal3f_to_vector3( v.normal ), 8 ) );
gl().glVertex3fv( vertex3f_to_array( v.vertex ) );
gl().glVertex3fv( vector3_to_array( normal ) );
}
gl().glEnd();
@@ -226,9 +226,9 @@ public:
Callback<void()> m_lightsChanged;
~Model(){
for ( surfaces_t::iterator i = m_surfaces.begin(); i != m_surfaces.end(); ++i )
for ( auto *surf : m_surfaces )
{
delete *i;
delete surf;
}
}
@@ -250,9 +250,9 @@ public:
}
void updateAABB(){
m_aabb_local = AABB();
for ( surfaces_t::iterator i = m_surfaces.begin(); i != m_surfaces.end(); ++i )
for ( const auto *surf : m_surfaces )
{
aabb_extend_by_aabb_safe( m_aabb_local, ( *i )->localAABB() );
aabb_extend_by_aabb_safe( m_aabb_local, surf->localAABB() );
}
}
@@ -265,10 +265,10 @@ public:
}
void testSelect( Selector& selector, SelectionTest& test, const Matrix4& localToWorld ){
for ( surfaces_t::iterator i = m_surfaces.begin(); i != m_surfaces.end(); ++i )
for ( auto *surf : m_surfaces )
{
if ( ( *i )->intersectVolume( test.getVolume(), localToWorld ) != c_volumeOutside ) {
( *i )->testSelect( selector, test, localToWorld );
if ( surf->intersectVolume( test.getVolume(), localToWorld ) != c_volumeOutside ) {
surf->testSelect( selector, test, localToWorld );
}
}
}
@@ -355,11 +355,11 @@ public:
}
}
void destroyRemaps(){
for ( SurfaceRemaps::iterator i = m_skins.begin(); i != m_skins.end(); ++i )
for ( auto& [ name, shader ] : m_skins )
{
if ( ( *i ).second != 0 ) {
GlobalShaderCache().release( ( *i ).first.c_str() );
( *i ).second = 0;
if ( shader != 0 ) {
GlobalShaderCache().release( name.c_str() );
shader = 0;
}
}
}
@@ -427,9 +427,9 @@ public:
}
}
void clearLights() override {
for ( SurfaceLightLists::iterator i = m_surfaceLightLists.begin(); i != m_surfaceLightLists.end(); ++i )
for ( auto& lightList : m_surfaceLightLists )
{
( *i ).clear();
lightList.clear();
}
}
};
+20 -20
View File
@@ -58,9 +58,9 @@ public:
void lightsChanged() const override {
}
void forEachLight( const RendererLightCallback& callback ) const override {
for ( Lights::const_iterator i = m_lights.begin(); i != m_lights.end(); ++i )
for ( const auto *light : m_lights )
{
callback( *( *i ) );
callback( *light );
}
}
};
@@ -117,12 +117,12 @@ public:
gl().glBegin( GL_LINES );
for ( Array<ArbitraryMeshVertex>::const_iterator i = m_vertices.begin(); i != m_vertices.end(); ++i )
for ( const auto& v : m_vertices )
{
Vector3 normal = normal3f_to_vector3( ( *i ).normal );
Vector3 normal = normal3f_to_vector3( v.normal );
normal = matrix4_transformed_direction( modelview_inv, vector3_normalised( matrix4_transformed_direction( modelview_inv_transposed, normal ) ) ); // do some magic
Vector3 normalTransformed = vector3_added( vertex3f_to_vector3( ( *i ).vertex ), vector3_scaled( normal, 8 ) );
gl().glVertex3fv( vertex3f_to_array( ( *i ).vertex ) );
Vector3 normalTransformed = vector3_added( vertex3f_to_vector3( v.vertex ), vector3_scaled( normal, 8 ) );
gl().glVertex3fv( vertex3f_to_array( v.vertex ) );
gl().glVertex3fv( vector3_to_array( normalTransformed ) );
}
gl().glEnd();
@@ -187,10 +187,10 @@ private:
ArbitraryMeshTriangle_sumTangents( a, b, c );
}
for ( Array<ArbitraryMeshVertex>::iterator i = m_vertices.begin(); i != m_vertices.end(); ++i )
for ( auto& v : m_vertices )
{
vector3_normalise( reinterpret_cast<Vector3&>( ( *i ).tangent ) );
vector3_normalise( reinterpret_cast<Vector3&>( ( *i ).bitangent ) );
vector3_normalise( reinterpret_cast<Vector3&>( v.tangent ) );
vector3_normalise( reinterpret_cast<Vector3&>( v.bitangent ) );
}
}
@@ -321,8 +321,8 @@ public:
CopyPicoModel( model );
}
~PicoModel(){
for ( surfaces_t::iterator i = m_surfaces.begin(); i != m_surfaces.end(); ++i )
delete *i;
for ( auto *surface : m_surfaces )
delete surface;
}
typedef surfaces_t::const_iterator const_iterator;
@@ -355,10 +355,10 @@ public:
}
void testSelect( Selector& selector, SelectionTest& test, const Matrix4& localToWorld ){
for ( surfaces_t::iterator i = m_surfaces.begin(); i != m_surfaces.end(); ++i )
for ( auto *surface : m_surfaces )
{
if ( ( *i )->intersectVolume( test.getVolume(), localToWorld ) != c_volumeOutside ) {
( *i )->testSelect( selector, test, localToWorld );
if ( surface->intersectVolume( test.getVolume(), localToWorld ) != c_volumeOutside ) {
surface->testSelect( selector, test, localToWorld );
}
}
}
@@ -482,11 +482,11 @@ public:
}
void destroyRemaps(){
ASSERT_MESSAGE( m_skins.size() == m_picomodel.size(), "ERROR" );
for ( SurfaceRemaps::iterator i = m_skins.begin(); i != m_skins.end(); ++i )
for ( auto& [ name, shader ] : m_skins )
{
if ( ( *i ).second != 0 ) {
GlobalShaderCache().release( ( *i ).first.c_str() );
( *i ).second = 0;
if ( shader != 0 ) {
GlobalShaderCache().release( name.c_str() );
shader = 0;
}
}
}
@@ -556,9 +556,9 @@ public:
}
}
void clearLights() override {
for ( SurfaceLightLists::iterator i = m_surfaceLightLists.begin(); i != m_surfaceLightLists.end(); ++i )
for ( auto& light : m_surfaceLightLists )
{
( *i ).clear();
light.clear();
}
}
};
+14 -14
View File
@@ -988,9 +988,9 @@ public:
m_pSpecular = evaluateTexture( m_template.m_specular, m_template.m_params, m_args );
m_pLightFalloffImage = evaluateTexture( m_template.m_lightFalloffImage, m_template.m_params, m_args );
for ( ShaderTemplate::MapLayers::const_iterator i = m_template.m_layers.begin(); i != m_template.m_layers.end(); ++i )
for ( const auto& layer : m_template.m_layers )
{
m_layers.push_back( evaluateLayer( *i, m_template.m_params, m_args ) );
m_layers.push_back( evaluateLayer( layer, m_template.m_params, m_args ) );
}
if ( m_layers.size() == 1 ) {
@@ -1031,9 +1031,9 @@ public:
GlobalTexturesCache().release( m_pLightFalloffImage );
for ( MapLayers::iterator i = m_layers.begin(); i != m_layers.end(); ++i )
for ( auto& layer : m_layers )
{
GlobalTexturesCache().release( ( *i ).texture() );
GlobalTexturesCache().release( layer.texture() );
}
m_layers.clear();
@@ -1092,9 +1092,9 @@ public:
return &m_layers.front();
}
void forEachLayer( const ShaderLayerCallback& callback ) const override {
for ( MapLayers::const_iterator i = m_layers.begin(); i != m_layers.end(); ++i )
for ( const auto& layer : m_layers )
{
callback( *i );
callback( layer );
}
}
@@ -1132,9 +1132,9 @@ void ActiveShaders_IteratorIncrement(){
}
void debug_check_shaders( shaders_t& shaders ){
for ( shaders_t::iterator i = shaders.begin(); i != shaders.end(); ++i )
for ( const auto& [ name, shader ] : shaders )
{
ASSERT_MESSAGE( i->second->refcount() == 1, "orphan shader still referenced" );
ASSERT_MESSAGE( shader->refcount() == 1, "orphan shader still referenced" );
}
}
@@ -1731,9 +1731,9 @@ public:
}
void foreachShaderName( const ShaderNameCallback& callback ) override {
for ( ShaderDefinitionMap::const_iterator i = g_shaderDefinitions.begin(); i != g_shaderDefinitions.end(); ++i )
for ( const auto& [ name, shader ] : g_shaderDefinitions )
{
callback( ( *i ).first.c_str() );
callback( name.c_str() );
}
}
@@ -1762,14 +1762,14 @@ public:
void setLightingEnabled( bool enabled ) override {
if ( CShader::m_lightingEnabled != enabled ) {
for ( shaders_t::const_iterator i = g_ActiveShaders.begin(); i != g_ActiveShaders.end(); ++i )
for ( const auto& [ name, shader ] : g_ActiveShaders )
{
( *i ).second->unrealiseLighting();
shader->unrealiseLighting();
}
CShader::m_lightingEnabled = enabled;
for ( shaders_t::const_iterator i = g_ActiveShaders.begin(); i != g_ActiveShaders.end(); ++i )
for ( const auto& [ name, shader ] : g_ActiveShaders )
{
( *i ).second->realiseLighting();
shader->realiseLighting();
}
}
}
+5 -6
View File
@@ -142,8 +142,7 @@ static void InitPakFile( ArchiveModules& archiveModules, const char *filename ){
}
inline void pathlist_append_unique( StrList& pathlist, CopiedString path ){
if( std::none_of( pathlist.cbegin(), pathlist.cend(),
[&path]( const CopiedString& str ){ return path_compare( str.c_str(), path.c_str() ) == 0; } ) )
if( std::ranges::none_of( pathlist, [&path]( const CopiedString& str ){ return path_compare( str.c_str(), path.c_str() ) == 0; } ) )
pathlist.emplace_back( std::move( path ) );
}
@@ -364,18 +363,18 @@ void InitDirectory( const char* directory, ArchiveModules& archiveModules ){
g_dir_close( dir );
// add the entries to the vfs
for ( Archives::iterator i = archivesOverride.begin(); i != archivesOverride.end(); ++i )
for ( const auto& archive : archivesOverride )
{
char filename[PATH_MAX];
strcpy( filename, path );
strcat( filename, ( *i ).c_str() );
strcat( filename, archive.c_str() );
InitPakFile( archiveModules, filename );
}
for ( Archives::iterator i = archives.begin(); i != archives.end(); ++i )
for ( const auto& archive : archives )
{
char filename[PATH_MAX];
strcpy( filename, path );
strcat( filename, ( *i ).c_str() );
strcat( filename, archive.c_str() );
InitPakFile( archiveModules, filename );
}
}