Pull to refresh
32
0
Send message

Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 1 из 6

Reading time7 min
Views399K

Содержание курса



Улучшение кода






Official translation (with a bit of polishing) is available here.




Постановка задачи


Цель этого цикла статей — показать, как работает OpenGL, написав его (сильно упрощённый!) клон самостоятельно. На удивление часто сталкиваюсь с людьми, которые не могут преодолеть первоначальный барьер обучения OpenGL/DirectX. Таким образом, я подготовил краткий цикл из шести лекций, после которого мои студенты выдают неплохие рендеры.

Итак, задача ставится следующим образом: не используя никаких сторонних библиотек (особенно графических) получить примерно такие картинки:



Внимание, это обучающий материал, который в целом повторит структуру библиотеки OpenGL. Это будет софтверный рендер, я не ставлю целью показать, как писать приложения под OpenGL. Я ставлю целью показать, как сам OpenGL устроен. По моему глубокому убеждению, без понимания этого написание эффективных приложений с использованием 3D библиотек невозможно.
Читать дальше →
Total votes 198: ↑196 and ↓2+194
Comments120

Литературно-фантастические новинки 2014 года. Чем пополнить домашнюю библиотеку фантастики

Reading time5 min
Views83K


Мы уже давно хотели сделать подобный пост, но всё ждали подходящего случая. И вот он подвернулся — Новый год, время подведения всевозможных итогов и создания рейтингов. И мы решили вспомнить о вечном — о фантастической литературе. Вряд ли найдётся среди нас хоть кто-то, кто не любит фантастику. Какой же айтишник не хранит в душе, в укромном уголке, воспоминания о книгах, которые когда-то потрясли его воображение своими вымышленными историями?!

И если в суете будней вы подзабросили чтение книг, то это вы зря. Высокие технологии пока не задушили писательское ремесло (надеемся, этого и не произойдёт), и ежегодно выходит немало интересных книг, достойных того, чтобы выкроить полчаса-час в день на чтение. Быть может, эти книги станут для вас некой отправной точкой. Кстати, в конце ноября теперь уже прошлого года Урсула Ле Гуин сказала:

«Наступают трудные времена, когда мы будем нуждаться в голосах писателей, которые смогут предложить альтернативы нашей сегодняшней жизни. Которые сквозь наше пронизанное страхом общество и навязчивые технологии смогут увидеть другие виды бытия, и, может быть, даже дадут нам надежду. Мы будем нуждаться в писателях, поэтах и мечтателях, помнящих о свободе реалистах».

Читать дальше →
Total votes 67: ↑51 and ↓16+35
Comments45

Теоретический минимум *nix-based-систем для WebDev-падавана

Reading time12 min
Views109K


Помни: сила рыцаря-джедая — это сила Вселенной.
Но помни: гнев, страх — это всё ведет на темную сторону Силы.
Как только ты сделаешь первый шаг по темному пути,
ты уже не сможешь с него свернуть…


Добрый день, уважаемый галактический сенат! На связи снова Денис Мельский, и сегодня на повестке дня — определение теоретического минимума познания *nix систем для юного падавана web-мастерства.

Хотелось бы начать с того, что все мы прекрасно знаем: на 67.4 % наши любимые интернеты крутятся на *nix-based-серверах, а в жизни среднестатистического web-разработчика в вакууме — так и на все 90 %.



Для любителей пруфов — welcome.

Т. ч. в нашем ремесле без знания *nix-систем никак. Давайте проведем экскурс в мир *nix и поймем, какими знаниями должен обладать юный падаван.

Предлагаю рассмотреть три юниорских степени познания дзена управлением шайтан-машиной ака *nix-сервак на примере всеми любимой ubuntu.
Читать дальше →
Total votes 92: ↑59 and ↓33+26
Comments37

Делаем собственную индикацию о входящем звонке

Reading time4 min
Views46K
После последнего поста о нашем Android-приложении у некоторых читателей статьи возник вопрос, как именно показать собственную информационную плашку во время звонка? Ну что же, сегодня мы ответим на этот вопрос.
Пст, хотите немного java-кода?
Total votes 35: ↑27 and ↓8+19
Comments16

network manager + автоматизация http-логина в wifi

Reading time2 min
Views17K
Пост будет коротким, но очень полезным.

abstract: Есть масса wifi-хот-спотов, которые просят сделать какую-нибудь глупость при подключении. Ввести пароль в http-форме, поставить чекбокс «согласен с продажей почки в обмен на интернет» и т. д.

Это задалбывает, особенно, если из wifi периодически выкидывает. В посте предлагается простое решение для автоматизации логина с помощью хуков Network Manager.

Подготовка


Нам надо понять куда кого как посылать, чтобы оно заработало. Ставим firebug или любой другой похожий плагин. Включаем, идём в вкладку 'net', включаем persistent (это важно), логинимся.

Получаем вот такое:



Находим POST (если их несколько — методом перебора и комбинирования), выбираем copy as curl, сохраняем куда-нибудь на будущее.

Дальше находим uuid нашего коннекта — в файле /etc/NetworkManager/system-connections/our_wifi.

Пишем скрипт (всё ниже — от рута) в каталоге /etc/NetworkManager/dispatcher.d/, например, /etc/NetworkManager/dispatcher.d/02-our_wifi-auto
Читать дальше →
Total votes 32: ↑27 and ↓5+22
Comments29

Тренировка мозга и ее геймификация

Reading time5 min
Views40K

В статье попытаюсь рассмотреть два типа мышления и возможные варианты их тренировки и геймификации. Мышление по типу решаемой задачи можно разделить на так называемое продуктивное и репродуктивное.
Продуктивное, оно же творческое мышление характеризуется созданием чего то качественно нового, в контексте решения задач (problem solving) иcпользуется для решения сложных, до этого не решаемых человек задач. Репродуктивное же мышление наоборот, используется для задач у которых уже известна схема решения, и выполнение по сути зависит только от базовых когнитивных навыков человека.

Творческое мышление


Представим задачу стоящую перед творческим мышлением в виде абстрактной двухмерной плоскости, на которой где-то находятся несколько точек приемлемых решений. Перед человеком стоит проблема найти одну из таких точек-решений, но сложность состоит в невозможности перебрать все возможные варианты, поэтому в большинстве случаем на помощь приходит озарение. Классическая схема решения творческой задачи состоит из стадий
1) Подготовка — формулирование задачи
2) Инкубация — временное отвлечение от задачи
3) Озарение — появление интуитивного решения.
Читать дальше →
Total votes 27: ↑20 and ↓7+13
Comments22

Молнии

Reading time4 min
Views42K


Вы летите на своём корабле по пещере, уклоняясь от вражеского огня. Однако, довольно скоро вы осознаёте что врагов слишком много и похоже что это конец. В отчаянной попытке выжить вы жмёте на Кнопку. Да, на ту самую кнопку. На ту, что вы приготовили для особого случая. Ваш корабль заряжается и выпускает по врагам смертоносные молнии, одну за другой, уничтожая весь флот противника.

По крайней мере, таков план.

Но как же именно вам, как разработчику игры, отрендерить такой эффект?
Читать дальше →
Total votes 99: ↑97 and ↓2+95
Comments22

Дюжина логических задач с собеседований

Reading time2 min
Views314K
image

Не знаю, как у вас, но у меня любимая часть интервью — логические задачи.
Довелось пройти немало собеседований на вакансию разработчика, поэтому набралась небольшая коллекция.
Спешу поделиться с вами!

Некоторые задачи проще и широкоизвестные, другие заставляют хорошенько задуматься.
Ответы пока что публиковать не буду, надеюсь, вы сами сможете всё решить.
Предлагаю размять свой мозг…
Читать дальше →
Total votes 71: ↑55 and ↓16+39
Comments244

Lenovo Yoga 13 + Comodo Firewall ≠ <3

Reading time4 min
Views59K


До сегодняшнего дня я не верил, что софт, особенно не заведомо вредоносный, может как-то критически повлиять на железо, в худшем случае ожидая отказ работы операционной системы. Но так бывает: ты устанавливаешь файрвол, а твой ноутбук перестает работать. К моей радости, в этот раз это история со счастливым концом.

Подробности здесь
Total votes 41: ↑32 and ↓9+23
Comments32

Cubli: роботизированный куб с почти совершенной балансировкой

Reading time1 min
Views196K


Разные компании выпускают достаточно большое количество игрушек и гаджетов, способных балансировать при разных условиях. В том же СССР еще выпускали пластиковую птицу, которая опиралась на основу лишь клювом, довольно тонким, а все «тело» находилось в воздухе. На днях в Сети появилось видео с демонстрацией работы роботизированного «куба», способность которого к балансу весьма высока.

Читать дальше →
Total votes 108: ↑97 and ↓11+86
Comments115

Художественные и документальные фильмы о космонавтике

Reading time4 min
Views69K

Статьи о книгах и играх требуют «третьего кита» — рассказа о фильмах на космическую тему. Тем более, что я «заболел» космонавтикой именно после просмотра нескольких фильмов подряд. В данной статье я хочу рассказать о лично виденных достойных упоминания художественных (не фантастических) и документальных фильмах о космонавтике.
Что бы посмотреть на выходных?
Total votes 49: ↑44 and ↓5+39
Comments37

Возврат денег за Windows 8 на ноутбуке Lenovo в Нотике

Reading time21 min
Views221K
В этом посте излагается моя история по возврату windows 8.
Купил ноутбук Lenovo в магазине Нотик. Деньги удалось вернуть в досудебном порядке, за что большое магазину спасибо. Это сэкономило время как мне, так и вам. Это также уменьшило ваши расходы на моего адвоката (в случае если бы я выйграл дело, а я бы обязательно выйграл), штраф в размере 50% стоимости сделки, а также выплаты неустойки. Кроме того, я бы требовал возврата общеизвестной стоимости Windows 8, а не той суммы, которую определила леново.




О том, что нужно сделать для возврата восьмёрки читайте делее.
Читать дальше →
Total votes 223: ↑169 and ↓54+115
Comments444

Возврат предустановленной Windows 8

Reading time3 min
Views176K
В статье опишу процедуру возврата денежных средств за предустановленную на приобретенный только что ноутбук операционную систему на примере недавно вышедшей Windows 8. По предыдущим версиям информации в инете, в том числе на официальном сайте производителей ноутбуков, предостаточно. По восьмёрке на момент покупки и, собственно, манипуляций с возвратом никакой информации не обнаружилось.

Предвосхищая комментарии вроде «зачем покупать машину без колес, etc...» сразу объяснюсь: вопросы по данной теме мне лично задают постоянно, будем считать этот топик чем-то вроде тестирования системы возврата на собственной шкуре.

Что и как нужно делать
Total votes 92: ↑71 and ↓21+50
Comments141

Возврат денег за предустановленную OEM Windows. Конец истории

Reading time5 min
Views11K
Снова доброго времени суток, уважаемые хабровчане.
Этот пост пишу в продолжение предыдущего.
Напомню, что речь шла о возможности возврата денег за неиспользуемую OEM-лицензию Windows после покупки ноутбука в интернет-магазине.

Итак, чем все закончилось, и какие из этого следуют выводы?
Читать дальше →
Total votes 61: ↑40 and ↓21+19
Comments39

Возврат денег за предустановленную OEM Windows — создадим прецедент?

Reading time4 min
Views12K
Приветствую, уважаемое Хабрасообщество.

Предлагаю создать прецедент по возврату денег за предустановленную ОС Windows, причем при покупке в интернет-магазине. Готов быть подопытным хомячком, нужна ваша помощь и поддержка.
Читать дальше →
Total votes 197: ↑159 and ↓38+121
Comments354

Защита прав потребителей в России: Мы далеко не последние

Reading time6 min
Views8.5K
Устал я слушать от знакомых причитания по качеству защиты прав покупателей в России и завистливые возгласы: «Вот на западе....».
Нет, я не хочу сказать что я негативно отношусь к западу, просто хочу показать, что и у наших граждан, есть защита. И закон о защите прав потребителей далеко не такой, каким многие его представляют.
Что же даёт нам закон?
Total votes 165: ↑164 and ↓1+163
Comments110

Что делать, если к вам попал Android со сломанным сенсорным дисплеем

Reading time4 min
Views289K
image

В один прекрасный день ко мне в руки попал Nexus 4. В наших краях это редкость, поэтому хотелось бы использовать его как основной телефон. К сожалению, тач у него разбит. Одна из болячек всех современных смартфонов. Ну, решено было восстанавливать. Купил тач на ebay. Теперь ждать слоупочту россии месяцок-другой. Захотелось узнать о девайсе побольше, поработать с ним, пока посылка едет. Заодно проверить, всё ли работает. А то, может, камера или динамики тоже покрошились. В данной статье рассмотрим захват управления девайсом, если сломан тач.
Читать дальше →
Total votes 65: ↑57 and ↓8+49
Comments53

Android приложение на QML: Picker

Reading time4 min
Views18K
Можно ли написать обыкновенное мобильное приложение на Qt Quick? Не игру, а именно традиционное приложение? Если полгода назад у меня были серьезные сомнения в осуществимости этого предприятия, то теперь сомнений не осталось — можно!

Конечно, на этом пути поджидало (и поджидает) множество проблем, большинство из которых описано тут. На данный момент накопилось уже приличное количество наработок, надеюсь эта статья положит начало циклу по систематизации и документированию опыта. Начнем с чего-нибудь простого и нужного, а именно с виджета выбора цифрового значения, по английски именуемого Picker. Такой используется в Android, когда нужно ввести дату, время, или какое-нибудь специфическое значение.
Читать дальше →
Total votes 14: ↑13 and ↓1+12
Comments3

Как мы открывали и потом закрывали интернет-магазин

Reading time9 min
Views177K
Всем доброго времени суток.

Традиционно принято делиться удачными историями, мол, вон как было трудно, но мы все выдержали и теперь мы очень успешная компания. Я же хочу рассказать вам историю создания своего интернет-магазина «Тафигудс» без хеппиэнда. Честно признаться, никак не мог начать, две недели собирался то ли мыслями, то ли духом. Ведь признаваться в своих неудачах – дело не из легких. В общем, если мой опыт будет полезен тем, кто только в начале пути, то значит, я не зря старался.

Немного предыстории. Я работал клерком, сидел в уютном теплом офисе, где всегда можно налить себе вкусного горячего кофе, получал зарплату по итогам каждого месяца, и вообще все было стабильно и хорошо. Но с годами начинаешь ко всему этому привыкать и все меньше ценить, появляется желание прыгнуть выше и сделать что-то новое. Начитавшись разных историй успеха на Хабре, я пришел к выводу, что надо открыть свой бизнес. Ведь главное было бы желание, поэтому оставалось найти перспективное направление. Учитывая, что работаю в логистическом бизнесе в американской компании, то ничего другого мне не приходило на ум, как дистрибутировать что-нибудь эксклюзивное из США. Я начал рассматривать разные направления от товаров для спорта до электроники и одежды. В ходе переговоров и переписки с производителями пришла мысль, что выявлять одно перспективное направление — смысла нет, тем более при какой-либо ошибке риски могут быть фатальными, что-то вроде «не клади все в одну корзину». В итоге я пришел к выводу, что надо возить всего понемногу и продавать, выявляя самое интересное направление. К тому же раз сейчас идет тренд всяких гаджетов и вообще разных мобильных штучек, то к этому больше и будем склоняться. Ассортимент магазина будет состоять из гаджетов и аксессуаров к ним, товаров для дома, активного отдыха и т.п. Мы исключили одежду из-за необходимости иметь разные цвета и размеры, а также смартфоны и планшеты из-за отсутствия в них маржинальности, да и вообще, их продают все кому не лень.
Читать дальше →
Total votes 114: ↑103 and ↓11+92
Comments201

Руководство по Google Hangouts для Debian/Ubuntu Linux (а также Mac OS X и Windows)

Reading time6 min
Views44K
В свете последних событий, связанных со Skype (блокировка «старых» версий клиента, насильное обновление клиентов на всех платформах, откровенно сырая новая версия клиента для Linux), решил поделиться с сообществом успешным опытом использования Google Hangouts для коллаборации (командной разработки ПО, парного программирования) и написать универсальное руководство (tutorial, how-to) для Debian/Ubuntu Linux, а также Mac OS X и Windows, собрав всю необходимую и полезную информацию воедино.

Эта статья для тех, кто в поиске полноценной альтернативы Skype для большинства современных платформ и в первую очередь для Linux.
Читать дальше →
Total votes 55: ↑37 and ↓18+19
Comments58

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity