void EditorGeometryManager::_updateEditorGrid(G2::FrameInfo const& frame) { auto* camera = G2::ECSManager::getShared().getSystem<G2::CameraSystem, G2::CameraComponent>()->getRenderCamera(); glm::vec4 pos(0.f, 0.f, 0.f, 1.f); pos = glm::inverse(G2::ECSManager::getShared().getSystem<G2::TransformSystem, G2::TransformComponent>()->get(camera->getEntityId())->getWorldSpaceMatrix()) * pos; float posY = std::abs(pos.y); for (auto it = mGrids.begin(); it != mGrids.end(); ++it) { ((G2::Entity*)(*it))->getComponent<G2::RenderComponent>()->disable(); } for (auto it = mGrids.begin(); it != mGrids.end(); ++it) { float maxY = it->getUnitSize() * 25.f; if (maxY > posY) { // found the closest grid match ((G2::Entity*)(*it))->getComponent<G2::RenderComponent>()->enable(); mActiveGrid = &(*it); _updateGridPosition(); return; } } ((G2::Entity*)(*mGrids.begin()))->getComponent<G2::RenderComponent>()->enable(); mActiveGrid = &(*mGrids.begin()); _updateGridPosition(); }
size_t CDirectiveData::getDataSize() const { switch (mode) { case EncodingMode::Sjis: case EncodingMode::Custom: return customData.size(); case EncodingMode::U8: case EncodingMode::Ascii: case EncodingMode::U16: case EncodingMode::U32: case EncodingMode::U64: case EncodingMode::Float: case EncodingMode::Double: return normalData.size()*getUnitSize(); } return 0; }
Void metadata::ClassField::LogArrayRecord(StdUInt class_id, UInt32 count, UInt32 index) const { if(!enable_logging) return; WriteTransaction(getOffset() + class_id * getStep() + index * getUnitSize(), count * getUnitSize()); }
Void metadata::ClassField::LogRecord(StdUInt class_id) const { if(!enable_logging) return; WriteTransaction(getOffset() + class_id * getStep(), getUnitSize()); }