Какое-то время назад я начал писать 3D физический движок на C#. С нуля. Без игрового движка, без физических библиотек. Только твёрдые тела, столкновения и рендер поверх голого OpenGL.

Это задумывалось как учебный проект. Потом я добавил соединения. Потом разрушение. Потом рэгдоллы, машины, взрывы и материалы, которые ломаются по-разному.

В какой-то момент это перестало быть демкой движка и стало похоже на игру.

Так что теперь я двигаюсь в эту сторону. Получается песочница про то, как строить и разрушать. Всё в ней по-прежнему написано руками, и этим я тихо горжусь.

Сейчас оформляю всё в Steam. Дальше будет больше.

@

    • kevlarbeaverOP
      link
      fedilink
      arrow-up
      0
      ·
      19 days ago

      Провёл большую работу под капотом. Визуально это мало на что повлияло, но фактически я перелопатил всю программу.

      Цель этапа была - собрать всё это в Native AOT (нужно для нормальной сборки под Steam: один нативный exe, без рантайма, быстрый старт). По дороге пришлось убрать два главных блокера.

      Первый - сериализация сцен. Был рефлексивный System.Text.Json, перевёл на source-generated JsonSerializerContext.

      Второй и большой - System.Drawing/GDI+. Он не AOT-совместим и тянул за собой WinForms. Использовался в трёх местах: декодирование PNG-иконок, загрузка текстур и запекание атласа шрифта. Всё переписал на прямые P/Invoke к плоскому API gdiplus.dll

      После этого выключил UseWindowsForms, выкинул зависимость от Windows Desktop framework, DPI-awareness выставил сам через SetProcessDpiAwarenessContext, и поставил PublishAot=true.

      Итог: dotnet publish -c Release -r win-x64 собирает один нативный exe, .NET ставить не нужно, внешних зависимостей ноль.

    • Holger
      link
      fedilink
      arrow-up
      0
      ·
      18 days ago

      Красиво, работу то нашел?

        • Holger
          link
          fedilink
          arrow-up
          0
          ·
          17 days ago

          Работу ищи или меняй вид деятельности сразу а ты одно другое купил а потом начал продавать… Непрактично.

          • Harald
            link
            fedilink
            arrow-up
            0
            ·
            17 days ago

            можно на пособии сидеть

              • Harald
                link
                fedilink
                arrow-up
                0
                ·
                15 days ago

                ты не понимаешь, это искусство, для души

                • Holger
                  link
                  fedilink
                  arrow-up
                  0
                  ·
                  15 days ago

                  Понимаю но хреново будет душе если телу нечего будет жрать, а вкупе с критическим для программиста возраста это чревато последствиями.

                  • Harald
                    link
                    fedilink
                    arrow-up
                    0
                    ·
                    15 days ago

                    немецкий налогоплательщик накормит )

                    • Holger
                      link
                      fedilink
                      arrow-up
                      0
                      ·
                      15 days ago

                      Он щас расслабится или уже это сделал а потом спохватится и будет поздно. Какой то блядь сюр хвастаться новыми железками а потом потеряв работу сдавать их. Я этого абсолютно не понимаю. И это вместо того чтоб формировать подушку, финансовую ессно. Arbejde kevlarbeaver!

                      • Harald
                        link
                        fedilink
                        arrow-up
                        0
                        ·
                        15 days ago

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

                      • kevlarbeaverOP
                        link
                        fedilink
                        arrow-up
                        0
                        ·
                        15 days ago

                        Та ебал я в рот вашу работу, ребятки

                        • Holger
                          link
                          fedilink
                          arrow-up
                          0
                          ·
                          15 days ago

                          Это ты штоль? выглядишь хреново. Ну иди служи в ВСУ. Штраф заплатишь и вуаля.

                          • kevlarbeaverOP
                            link
                            fedilink
                            arrow-up
                            0
                            ·
                            15 days ago

                            ВСУ

                            ВСУ ваше я тоже в рот ебал 💁‍♂️

                            • Holger
                              link
                              fedilink
                              arrow-up
                              0
                              ·
                              15 days ago

                              Оно твое вот они тобой и займутся. Сам подумай твои шансы на натурализации в Гермахе равны нулю. Зато вот ВСУ и война твое истинное призвание а не какое то программирование.

                              • kevlarbeaverOP
                                link
                                fedilink
                                arrow-up
                                0
                                ·
                                15 days ago

                                Держу эту пикчу на случай важных переговоров:

                                • Holger
                                  link
                                  fedilink
                                  arrow-up
                                  0
                                  ·
                                  15 days ago

                                  Занимайся своим делом. Это ты на фото? Ужас как выглядишь.

                                  • kevlarbeaverOP
                                    link
                                    fedilink
                                    arrow-up
                                    0
                                    ·
                                    14 days ago

                                    Ты что, педик, что тебя так парит моя внешка?

                                    • Holger
                                      link
                                      fedilink
                                      arrow-up
                                      0
                                      ·
                                      14 days ago

                                      Нет пофиг но для 40 лет это ужасно бегай что ли по утрам.

                                      • kevlarbeaverOP
                                        link
                                        fedilink
                                        arrow-up
                                        0
                                        ·
                                        14 days ago

                                        Тут нет ТЦК – следовательно нет мотивации.

                                        • Holger
                                          link
                                          fedilink
                                          arrow-up
                                          0
                                          ·
                                          14 days ago

                                          Здоровье само по себе мотивация.

                                          • kevlarbeaverOP
                                            link
                                            fedilink
                                            arrow-up
                                            0
                                            ·
                                            14 days ago

                                            Сегодня, блядь, пришёл отказ из Siemens, им видите ли мой немецкий не устраивает.

                                            • Holger
                                              link
                                              fedilink
                                              arrow-up
                                              0
                                              ·
                                              14 days ago

                                              Сочувствую я вообще по немецки знаю только ‘шнель’, значит ты все таки ищешь работу, отлично.

          • xwicked
            link
            fedilink
            arrow-up
            0
            ·
            3 days ago

            Работу ищи или меняй вид деятельности сразу а ты одно другое купил а потом начал продавать… Непрактично.

            Я с начала года купил 2 миника. Один как тестовый с i5, а второй c i7 настроил как рабочую станцию для моей будущей абстрактной помощницы в вакууме. Пока не продал. Долги 1л.200к пока остаются. :D