Тёмная тема
Добавление свободной камеры:
Если вы используете версию после 3го мая:
cameraNode_ = scene_->CreateChild("Camera"); cameraNode_->CreateComponent<Camera>( ); cameraNode_->CreateComponent<FreeFlyController>( );
Чтение JSON:
структура файла .json
{ "Language":{ "en":"Language", "ru":"Язык", "fr":"Langage", "it":"Lingua" }, ... }
чтение файла:
auto* cache_ = GetSubsystem<ResourceCache>(); if( JSONFile* source = cache_->GetResource<JSONFile>( "EditorStrings.json")) { URHO3D_LOGINFO( "JSON"); const auto jObj = source->GetRoot( ).GetObject( ); for ( auto it = jObj.begin( ); it != jObj.end( ); it++) { ea::string unitString = it->first.trimmed( ); if( unitString == "Language") { ea::string name = it->second.GetString( ); const auto jLangValues = it->second.GetObject( ); for ( auto it = jLangValues.begin( ); it != jLangValues.end( ); it++) { ea::string unitString = it->first.trimmed( ); ea::string v = it->second.GetString( ); URHO3D_LOGINFO( "{}={}", unitString, v); } } } // URHO3D_LOGINFO( "JSON END"); }
результат консоли:
en=Language
fr=Langage
it=Lingua
ru=Язык
JSON END
офф. изменения свободной камеры от 3 мая. Теперь чтобы добавить к камере полёт достаточно написать
cameraNode_ = scene_->CreateChild("Camera"); cameraNode_->CreateComponent<Camera>( ); cameraNode_->CreateComponent<FreeFlyController>( );
О, нашел раздел.