Однажды геофизик
О том, чему меня пытаются учить и чему в итоге я научился
пятница, 13 января 2012 г.
понедельник, 8 августа 2011 г.
Записки с полей
Однокурсник уехал в Якутию от той-же Спецгеофизики, от которой я ездил на Алтай. Записывает свои впечатления в дневник.
понедельник, 11 июля 2011 г.
Ogre3D. Practical Application - Организация
Организация [или спасибо кэп]
Ваша программа должна где-то находиться. В Windows у вас скорее всего будет красивый MSI установщик, который запихнёт вашу игру куда-то в Program Files. В Linux это вероятно /usr/local или /opt tree. Но в любом случае вы не должны устанавливать игру в системные папки.Всё, что вы должны запомнить это:
- Располагать файлы игры только в папке данного приложения
- Использовать относительные пути к файлам проекта
Запускаемый .exe файл будет удобно разместить в корне директории приложения, которую выберет пользователь. Например, если игра установлена в C:\Program Files\MyGameCompany\ReallyCoolFPS тогда .exe файл должен находиться в C:\Program Files\MyGameCompany\ReallyCoolFPS\game.exe. В коде ты всегда будешь ссылаться на ресурсы и модули в виде относительных путей. Например, если в папке C:\Program Files\MyGameCompany\ReallyCoolFPS\maps находятся карты в любом месте кода программы ты должен будешь указывать относительный путь к этой папке - "maps/", а не "C:\Program Files\MyGameCompany\ReallyCoolFPS\maps". Лучше всего хранить путь к директории игры, как константу, доступную из любых модулей игры, тогда её будет легко изменить (вместо того, чтобы искать 624 места в коде, куда ты её впечатал). Это считается хорошим правилом программирования, я надеюсь вы всегда так и делаете. Так же лучше ничего не устанавливать в системную директорию, это вызовет кучу проблем при удалении приложения и DLL-помойку, даже если у вас есть хитрый план, по которому вы назовёте файлы. Держите всё под рукой, в смысле помещайте всё в MSI или RPM установщик приложения. Это позволяет легко найти запускаемый файл и помогает следить за используемыми модулями и их версиями.
С другой стороны вы не всегда можете быть уверены в доступности чтения/записи в директорию приложения. В Windows XP Home например, или в папке /usr/local, куда приложение было установлено под рутом. Так, что вы должны написать конфигурацию для записи пользовательских данных в определённое место для каждой системы. На Linux вы можете создать что угодно в $HOME (доступно через использование getenv() system API), на Windows используется Application Data Folder через \Documents And Settings\
Ogre3D Beginner Tutorial without the ExampleApplication framework
Появилась идея заняться разработкой игр, в связи с чем начали осваивать и выбирать графический движок. В основном нас заинтересовали Unity3D, Ogre3d и UDK (может быть ещё XNA). Наткнувшись на гайд по Ogre решил его перевести для себя. Пусть будет криво, но будет. Я потренируюсь в переводе и необходимость закончить перевод будет дополнительным стимулом изучить Огра.
Введение (о чём этот гайд)
Организация (или спасибо кэп)
Введение (о чём этот гайд)
Организация (или спасибо кэп)
пятница, 24 июня 2011 г.
Lenovo, acpi & keyboard
На баг трекере вчера написали решение проблемы с неработающей клавиатурой нетбука Lenovo S10-3c на Ubuntu, и на других дистрибутивах. Там ссылаются на совет как включать и отключать клавиатуру, следуя этому совету сегодня без проблем включил клавиатуру на своём нетбуке и уже ставлю убунту, ибо периодические подвисания винды на нём надоели.
Работает и клавиатура и acpi, что и требовалось. Оказалось всё так просто.
Работает и клавиатура и acpi, что и требовалось. Оказалось всё так просто.
вторник, 5 апреля 2011 г.
Дипломное проектирование
Сейчас я должен был бы сидеть и писать свой диплом, на тему: "Региональные сейсморазведочные работы на территории Республики Коми с целью выявления локальных нефтегазоперспективных объектов" и бла бла бла, но лыжи что-то не едут.
По идиотическому стечению обстоятельств мне (и ещё нескольким людям) поменяли дипломных руководителей чуть ли не в день подписания приказа. Такая вот у нас организация всего в институте, но это отдельная история. Хотя с руководителем я знаком только по телефону, мне ещё повезло. Ребятам, у кого руководителем попался зав. кафедрой приходится каждый раз объяснять кто они и зачем пришли, и получать каждый раз новую, и иногда противоречащую старой инструкцию.
До защиты ещё 2 месяца, успокаивает то, что такая фигня не у меня одного. На диплом потратил пока только пол дня, открыл методичку и скопипастил из данного мне проекта часть информации, в соответствии с методичкой.
В планах прочитать всё это и встретиться с руководителем и консультантами по геологии и экономике (и смету мне составлять тоже надо).
Но это всё теория, на практике я чиню компы, дежурю в офисе, где работал раньше в свободное время и радостно ковыряюсь в python. За этим ковырянием время на работе пролетает быстрее.
Язык очень понравился, красиво, удобно, легко осваивается. В планах освоить потоки, попробовать написать приложение с использованием gui, порисовать в openGL, ну и может ещё чего. Уже начал читать уроки по django. Надо как-то по порядку учить, а хочется всё вместе.
Пока не совсем понятно как делать .exe приложения на python, решение с py2exe кажется каким-то не очень удобным, ну гуглится в основном оно. Поживём посмотрим.
Зато сразу проснулось желание поставить linux, но на нетбуке, на котором я в основном программирую у линуха есть проблемы с совместимостью, либо не работает клавиатура и мышь, либо acpi (bug). И так и так использовать не удобно.
Хочется для начала что-то попроще, вроде ubuntu, на которой я уже сидел когда-то. Жду второй беты.
среда, 23 марта 2011 г.
VB6
До сих пор кто-то интересуется visual basic 6, видимо в институтах всё учат и учат. Да так учат, что люди ищут как отделить целую часть от дробной.
Так отвык уже от басика. Он по своему няшен и потом первый язык, которому меня начали учить.
Делается это вообщем то совсем просто:
Dim a as Single
a = 3.14
Print Int(a) 'Целая часть
Print a - Int(a) 'Дробная часть
Dim a as Single
a = 3.14
Print Int(a) 'Целая часть
Print a - Int(a) 'Дробная часть
Подписаться на:
Сообщения (Atom)