# SDL vs Curses

**URL:** <https://discourse.cataclysmdda.org/t/sdl-vs-curses/1716>\
**Category:** Основное обсуждение "Катаклизма"\
**Created:** [June 11, 2013, 7:05am UTC](https://discourse.cataclysmdda.org/t/sdl-vs-curses/1716 "2013-06-11T07:05:45Z")\
**Posts on this page:** 10\
**Page:** 2

<div class="post-metadata">

**Author:** ![aiwant2tc](https://avatars.discourse-cdn.com/v4/letter/a/7cd45c/32.png) [@aiwant2tc](https://discourse.cataclysmdda.org/u/aiwant2tc)\
**Post date:** [June 13, 2013, 6:33am UTC](https://discourse.cataclysmdda.org/t/sdl-vs-curses/1716/21 "2013-06-13T06:33:49Z")

</div>

Почему ? Если про производительность, то достаточно пересобрать командой make TILES=1 . SDL версия у всех почти одинаковая. Появляется “экзешник”. По нему два раза щёлкнуть и появляется окно. Даже в терминал заходить не надо : ) . Только цветовая схема уже … не та (именно потому, что вывод уже НЕ осуществляется через терминал 🙂 ). У меня в терминале цвета были приятнее. И фулл-скрин пока что не сделали для SDL…

Шрифт для терминала выбрать можно. Для SDL задаётся точно также, как до сих пор задавалось для GDI версии (виндовой). Зато масштабировать шрифт уже не знаю, как : ) . Только если полностью, а не только по высоте или ширине, как в SDL/GDI.

---

<div class="post-metadata">

**Author:** ![x0m9k](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.cataclysmdda.org/x0m9k/32/939_2.png) [@x0m9k](https://discourse.cataclysmdda.org/u/x0m9k)\
**Post date:** [June 13, 2013, 9:04am UTC](https://discourse.cataclysmdda.org/t/sdl-vs-curses/1716/22 "2013-06-13T09:04:38Z")

</div>

[quote=“aiwant2tc, post:21, topic:1716”]Почему ? Если про производительность, то достаточно пересобрать командой make TILES=1 . SDL версия у всех почти одинаковая. Появляется “экзешник”. По нему два раза щёлкнуть и появляется окно. Даже в терминал заходить не надо : ) . Только цветовая схема уже … не та (именно потому, что вывод уже НЕ осуществляется через терминал 🙂 ). У меня в терминале цвета были приятнее. И фулл-скрин пока что не сделали для SDL…

Шрифт для терминала выбрать можно. Для SDL задаётся точно также, как до сих пор задавалось для GDI версии (виндовой). Зато масштабировать шрифт уже не знаю, как : ) . Только если полностью, а не только по высоте или ширине, как в SDL/GDI.[/quote]  
Зачем в линуксе использовать тайловый рендер через SDL? Терминальный символьный куда быстрее.

---

<div class="post-metadata">

**Author:** ![aiwant2tc](https://avatars.discourse-cdn.com/v4/letter/a/7cd45c/32.png) [@aiwant2tc](https://discourse.cataclysmdda.org/u/aiwant2tc)\
**Post date:** [June 13, 2013, 9:23am UTC](https://discourse.cataclysmdda.org/t/sdl-vs-curses/1716/23 "2013-06-13T09:23:17Z")

</div>

Кхех оО . Я тебя не понимаю 🙂 .  
SDL версия работает в разы быстрее, всё что я могу сказать оО .

---

<div class="post-metadata">

**Author:** ![Savidiy](https://avatars.discourse-cdn.com/v4/letter/s/a183cd/32.png) [@Savidiy](https://discourse.cataclysmdda.org/u/Savidiy)\
**Post date:** [June 13, 2013, 10:31am UTC](https://discourse.cataclysmdda.org/t/sdl-vs-curses/1716/24 "2013-06-13T10:31:06Z")

</div>

А где можно посмотреть на исходники SDL версии? Что-то не похоже, что они те же что и на основном репозитории.

---

<div class="post-metadata">

**Author:** ![aiwant2tc](https://avatars.discourse-cdn.com/v4/letter/a/7cd45c/32.png) [@aiwant2tc](https://discourse.cataclysmdda.org/u/aiwant2tc)\
**Post date:** [June 13, 2013, 11:06am UTC](https://discourse.cataclysmdda.org/t/sdl-vs-curses/1716/25 "2013-06-13T11:06:24Z")

</div>

Да те же самые исходники ! 🙂 Если у тебя Linux, компилируй командой  
make TILES=1

Насчёт Windows не знаю оО.  
//Если не ошибаюсь, то под виндой нельзя скомпилить. Там какая-то ошибка. Зато из под Linux для Windows можно оО

Файл зовётся sdlcurse.cpp

И судя по комментариям, SDL версия не кроссплатформенна… Но идентична оО

---

<div class="post-metadata">

**Author:** ![Savidiy](https://avatars.discourse-cdn.com/v4/letter/s/a183cd/32.png) [@Savidiy](https://discourse.cataclysmdda.org/u/Savidiy)\
**Post date:** [June 13, 2013, 11:52am UTC](https://discourse.cataclysmdda.org/t/sdl-vs-curses/1716/26 "2013-06-13T11:52:40Z")

</div>

Спасибо! Просто файл не добавлен в проект Code::Blocks и я прошел мимо нее=)

---

<div class="post-metadata">

**Author:** ![FMJ](https://avatars.discourse-cdn.com/v4/letter/f/3d9bf3/32.png) [@FMJ](https://discourse.cataclysmdda.org/u/FMJ)\
**Post date:** [July 27, 2013, 12:49pm UTC](https://discourse.cataclysmdda.org/t/sdl-vs-curses/1716/27 "2013-07-27T12:49:26Z")

</div>

К вопросу о разнице - для никсов в SDL версии работают настройки viewport в отличии от терминала.  
Что позволяет расширить зону просмотра выше стандартных 12х12.

Но как минус в SDL шрифты рисует не сглаженными.  
Что в принципе можно включить через правку вышеупомянутого sdlcurse.cpp  
Изменив  
std::string blending = “solid”;  
на  
std::string blending = “blended”;

В итоге вот так выглядит ncurses ![](http://s1.sendimage.me/5JFBl2rV.png)  
И вот так SDL ![](http://s1.sendimage.me/l01NN2rU.png)

---

<div class="post-metadata">

**Author:** ![Sylpheed](https://avatars.discourse-cdn.com/v4/letter/s/ac91a4/32.png) [@Sylpheed](https://discourse.cataclysmdda.org/u/Sylpheed)\
**Post date:** [July 27, 2013, 2:05pm UTC](https://discourse.cataclysmdda.org/t/sdl-vs-curses/1716/28 "2013-07-27T14:05:17Z")

</div>

в терминальной версии настройки viewport конечно не работают, но размер игрового поля зависит от размера терминала и размера шрифта, вот у меня на весь экран(1920х1080) терминал и шрифт 24:  
[![](http://storage4.static.itmages.ru/i/13/0727/s_1374933730_2220080_0e68d3684e.png)](http://itmages.ru/image/view/1139552/0e68d368)

---

<div class="post-metadata">

**Author:** ![FMJ](https://avatars.discourse-cdn.com/v4/letter/f/3d9bf3/32.png) [@FMJ](https://discourse.cataclysmdda.org/u/FMJ)\
**Post date:** [July 27, 2013, 4:36pm UTC](https://discourse.cataclysmdda.org/t/sdl-vs-curses/1716/29 "2013-07-27T16:36:35Z")

</div>

Увы, терминал терминалу рознь. У меня только по вертикали увеличивалось поле обзора и меньше цветов для отображения. Серые направления на компасе рисовало черным по черному.

---

<div class="post-metadata">

**Author:** ![Sylpheed](https://avatars.discourse-cdn.com/v4/letter/s/ac91a4/32.png) [@Sylpheed](https://discourse.cataclysmdda.org/u/Sylpheed)\
**Post date:** [July 27, 2013, 5:38pm UTC](https://discourse.cataclysmdda.org/t/sdl-vs-curses/1716/30 "2013-07-27T17:38:37Z")

</div>

Терминал он и в африке терминал, а то что у вас, это у вас. Я использую xterm или urxvt.

p.s. вот моя команда запуска xterm для cataclysm: xterm -class XTern -fa “xft:Droid Sans Mono:pixelsize=32:antialias=true” +bc -geometry 100x26

опция -class у меня указывает на несуществующий элиас настроек в .xdefaults, чтоб грузились цвета по умолчанию, 32 это размер шрифта, можно указывать какой понравится.

[Previous page](https://discourse.cataclysmdda.org/t/sdl-vs-curses/1716.md?page=1)
