Четверг, 10.07.2025, 01:18
Приветствую Вас Гражданское лицо | RSS
[SEARCH_TITLE]
[SEARCH_FORM]
Главная | Каталог статей | Регистрация | Вход
TMS
Форма входа
Сайт переехал на новый адрес:
//alexcoder.ucoz.ru
На данном адресе новые материалы выкладываться не будут
Также по новому адресу доступен оффлайн архив материалов
Меню сайта

Категории раздела
Программирование [10]
Компъютеры [2]
WEB [2]
Веб-сервисы
Игры [2]
ОС [6]

Поиск

Облако тегов

Наш опрос
Оцените мой сайт
Всего ответов: 22

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Также использую Google Analystic

Мини-чат

KASPERSKY
Новости вирусоной активности

Реклама
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz

  • Главная » Статьи » Компъютеры » Программирование

    Python. Пишем игру
    В общем припёрло сделать свою игру на Python. Не долго думая выграл в качестве движка Panda3d. IDE - netbeans с Python плагином

    Итак, скачав с сайта движок, и установив NetBeans я принялся что-то строить smile

    Создал пустой проект Python и вписал туда код :

    Code

    from direct.showbase.ShowBase import ShowBase
       
    class MyApp(ShowBase):
       
      def __init__(self):
      ShowBase.__init__(self)
       
    app = MyApp()
    app.run()

    Не буду объяснять как это работает - отработало - пустое окно отобразилось smile

    Теперь подумаем о сай игре, точнее - о формате данных.
    У нас есть варианта


    • Свой самописный
    • XML
    • JSON
    • Описывать python-скриптом smile

    Приделаем настройки графики. Используем замечательную функцию - loadPrcFileData()
    Получим такой код

    Code

    from direct.showbase.ShowBase import ShowBase

    class MyApp(ShowBase):

      def __init__(self):
      ShowBase.__init__(self)

    from panda3d.core import loadPrcFileData
    f=open('settings.pst','r')
    for set in iter(f.readline, ""):
      loadPrcFileData('', set)
    f.close

    app = MyApp()
    app.run()


    А в файл settings.pst вишем строку
    Code

    fullscreen 1

    Это должно отработать так : "переменной" fullscreen присвоить значение 1
    Проверим сработает ли - у мну сработало.

    Едем дальше - так как разрешение например - вещь локальная а название игры - глобальнее, то я передеал так основной код:

    Code

    from direct.showbase.ShowBase import ShowBase

    class MyApp(ShowBase):

      def __init__(self):
      ShowBase.__init__(self)

    def loadPSTfile(name):
      from panda3d.core import loadPrcFileData
      f=open(name,'r')
      for set in iter(f.readline, ""):
      loadPrcFileData('', set)
      f.close

    loadPSTfile("global.pst")
    loadPSTfile("settings.pst")

    app = MyApp()
    app.run()


    И 2 файла настроек :

    Вроде всё грузит. Ладно, я ушел копать дальше smile Продолжение следует smile

    Категория: Программирование | Добавил: alexKniaz0803 (25.06.2010)
    Просмотров: 1661 | Теги: Python | Рейтинг: 5.0/1
    Всего комментариев: 0
    Добавлять комментарии могут только зарегистрированные пользователи.
    [ Регистрация | Вход ]

    Copyright MyCorp © 2025
    Конструктор сайтовuCoz