Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 10 лет назад пользователемГеоргий Чемезов
1 AFD Data Driven Architectures Денис А. Малых iLLi Studio
2 Денис А. Малых, iLLi Studios2 Who is who? 1. Денис А. Малых. Разработчик систем искусственного интеллекта и игровой логики ООО «Айс Хилл». Руководитель проекта iLLi Studio.
3 Денис А. Малых, iLLi Studios3 Present time architectures Functional glClear(GL_COLOR_BUFFER_BIT); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluOrtho2D(-3.0f, 3.0f, -3.0f, 3.0f); glDisable(GL_LIGHTING); glColor3f(0.0f, 0.0f, 1.0f); glBegin(GL_LINES); glVertex2f(-1.0f, 1.0f); glVertex2f(1.0f, 1.0f); glEnd(); glFlush();
4 Денис А. Малых, iLLi Studios4 Present time architectures Object-Oriented irr::SIrrlichtCreationParameters v_stParams; v_stParams.WindowId = hWnd; v_stParams.DriverType = irr::video::EDT_DIRECT3D9; v_pDevice = irr::createDeviceEx( v_stParams ); v_pSMgr = v_pDevice->getSceneManager( ); v_pDriver = v_pDevice->getVideoDriver( ); irr::scene::ICameraSceneNode* v_pCam; v_pCam = v_pSMgr->addCameraSceneNode( ); v_pCam->setTarget( illi::st_Vector3f( 0.0f, 0.0f, 0.0f ) ); irr::scene::ISceneNodeAnimator* v_pAnim; v_pAnim = v_pSMgr->createFlyCircleAnimator( illi::st_Vector3f( 0.0f, 15.0f, 0.0f ), 30.0f ); v_pCam->addAnimator( v_pAnim ); v_pAnim->drop( ); irr::scene::ISceneNode* v_pCube; v_pCube = v_pSMgr->addCubeSceneNode( 20 ); v_pCube->setMaterialFlag( irr::video::EMF_LIGHTING, false );
5 Денис А. Малых, iLLi Studios5 But! Проблемы всех существующих архитектур Создавая архитектуру приложения – они совсем не учитывают данные. Возникает проблема «магических чисел» и «hard-coded включений» Для новых данных требуется переписывать код Сложность поддержки
6 Денис А. Малых, iLLi Studios6 Solution! Для решение проблемы требуется вынести данные из системы и писать код так, чтобы он не знал, какие данные он обрабатывает.
7 Денис А. Малых, iLLi Studios7 Conclusion В результате использования архитектуры DataDriven получаем следующее Данные учитываются в той мере, в которой необходимо, однако пишется дано-независимый код Все «магические числа» и «hard-coded включения» выносятся в файл данных, где их всегда можно поправить без привлечения программистов Новые данные добавляются без привлечения программиста -> ускорение работы Используя DDA вместе с OOA получаем гибкую масштабируемую архитектуру приложений (DDA – DataDriven Architecture, OOA – Object- Oriented Architecture) Возможно параллельная работа над проектом – программисты пишут код, дизайнеры пользуют хранилище данных для выполнения своих задач. Повышается контроль над приложение
8 Денис А. Малых, iLLi Studios8 Thanks for Your Attention! Any questions?
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.