Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion docs/en/manuals/extensions-best-practices.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,9 @@ In the Defold source, C++ is used very sparingly and most code is very C-like. T

### C++ version

The Defold source is built with the default C++ version of each compiler. The Defold source itself uses no C++ version higher than C++98. While it is possible to use a higher version to build an extension, a higher version might come with ABI changes. This might make it impossible to use one extension in conjunction with an extensions in the engine or from the [asset portal](/assets).
When building the core engine, we use C++11, but on Windows we use C++14. Console builds generally require C++14 or above now.

For native extensions, we don't use a pinned C++ version but rely on the default version of the platform toolchain.

The Defold source avoids using the latest features or versions of C++. Mostly because there is no need for new features when building a game engine, but also because keeping track of the latest features of C++ is a time consuming task, and to really master those features will require a lot of precious time.

Expand Down
4 changes: 3 additions & 1 deletion docs/es/manuals/extensions-best-practices.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,9 @@ En el código fuente de Defold, C++ se usa con mucha moderación y la mayor part

### Versión de C++

El código fuente de Defold se compila con la versión de C++ predeterminada de cada compilador. El propio código fuente de Defold no usa ninguna versión de C++ superior a C++98. Aunque es posible usar una versión superior para compilar una extensión, una versión superior podría traer cambios de ABI. Esto podría hacer imposible usar una extensión junto con extensiones del motor o del [Asset Portal](/assets).
Al compilar el motor principal, usamos C++11, pero en Windows usamos C++14. Las compilaciones para consolas generalmente requieren C++14 o superior actualmente.

Para las extensiones nativas, no usamos una versión de C++ fija, sino que dependemos de la versión predeterminada de la cadena de herramientas de la plataforma.

El código fuente de Defold evita usar las últimas funcionalidades o versiones de C++. Principalmente porque no hacen falta funcionalidades nuevas al crear un motor de videojuegos, pero también porque seguir las últimas funcionalidades de C++ lleva mucho tiempo, y dominar realmente esas funcionalidades requerirá mucho tiempo valioso.

Expand Down
4 changes: 3 additions & 1 deletion docs/ko/manuals/extensions-best-practices.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,9 @@ Defold 소스에서는 C++를 매우 제한적으로 사용하며, 대부분의

### C++ 버전

Defold 소스는 각 컴파일러의 기본 C++ 버전으로 빌드됩니다. Defold 소스 자체는 C++98보다 높은 C++ 버전을 사용하지 않습니다. 익스텐션을 빌드할 때 더 높은 버전을 사용할 수는 있지만, 더 높은 버전에는 ABI 변경이 함께 올 수 있습니다. 이로 인해 엔진에 포함된 익스텐션이나 [Asset Portal](/assets)의 익스텐션과 함께 하나의 익스텐션을 사용하는 것이 불가능해질 수 있습니다.
코어 엔진을 빌드할 때는 C++11을 사용하지만, Windows에서는 C++14를 사용합니다. 이제 콘솔 빌드는 일반적으로 C++14 이상을 요구합니다.

네이티브 익스텐션에는 고정된 C++ 버전을 사용하지 않고 플랫폼 툴체인의 기본 버전에 의존합니다.

Defold 소스는 최신 C++ 기능이나 버전 사용을 피합니다. 주된 이유는 게임엔진을 만들 때 새 기능이 필요하지 않기 때문이지만, 최신 C++ 기능을 계속 파악하는 일은 시간이 많이 드는 작업이고, 그 기능들을 제대로 숙달하려면 많은 귀중한 시간이 필요하기 때문이기도 합니다.

Expand Down
4 changes: 3 additions & 1 deletion docs/pl/manuals/extensions-best-practices.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,9 @@ W kodzie źródłowym Defold C++ jest używany bardzo oszczędnie, a większoś

### Wersja C++

Kod źródłowy Defold jest budowany z użyciem domyślnej wersji C++ każdego kompilatora. Sam kod źródłowy Defold nie używa wersji C++ wyższej niż C++98. Chociaż do zbudowania rozszerzenia można użyć nowszej wersji, może ona wiązać się ze zmianami ABI. To może uniemożliwić używanie jednego rozszerzenia razem z innymi rozszerzeniami w silniku lub z [asset portal](/assets).
Podczas budowania głównego silnika używamy C++11, ale w systemie Windows używamy C++14. Kompilacje na konsole zazwyczaj wymagają obecnie C++14 lub nowszego.

W przypadku natywnych rozszerzeń nie używamy ustalonej wersji C++, lecz polegamy na domyślnej wersji toolchaina danej platformy.

Kod źródłowy Defold unika korzystania z najnowszych funkcji i wersji C++. Głównie dlatego, że przy tworzeniu silnika gier nie ma potrzeby wprowadzania nowych funkcji, ale też dlatego, że śledzenie najnowszych możliwości C++ jest czasochłonne, a ich naprawdę dobre opanowanie wymagałoby dużo cennego czasu.

Expand Down
4 changes: 3 additions & 1 deletion docs/pt/manuals/extensions-best-practices.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,9 @@ No código-fonte do Defold, C++ é usado de forma muito moderada, e a maior part

### Versão de C++

O código-fonte do Defold é compilado com a versão padrão de C++ de cada compilador. O próprio código-fonte do Defold não usa versão de C++ superior a C++98. Embora seja possível usar uma versão mais alta para compilar uma extensão, uma versão mais alta pode trazer mudanças de ABI. Isso pode tornar impossível usar uma extensão em conjunto com extensões na engine ou do [Portal de Assets](/assets).
Ao compilar a engine principal, usamos C++11, mas no Windows usamos C++14. As compilações para consoles geralmente exigem C++14 ou superior atualmente.

Para extensões nativas, não usamos uma versão fixa do C++, mas dependemos da versão padrão do toolchain da plataforma.

O código-fonte do Defold evita usar os recursos ou versões mais recentes de C++. Principalmente porque não há necessidade de novos recursos ao construir uma engine de jogos, mas também porque acompanhar os recursos mais recentes de C++ é uma tarefa demorada, e dominar esses recursos de fato exige muito tempo precioso.

Expand Down
4 changes: 3 additions & 1 deletion docs/ru/manuals/extensions-best-practices.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,9 @@ brief: В этом руководстве описаны лучшие метод

### Версия C++

Исходники Defold собираются с использованием версии C++ по умолчанию для каждого компилятора. Сам движок не использует возможности C++ новее, чем C++98. Хотя использовать более новую версию для расширения возможно, это может вызвать проблемы с ABI. Это может привести к невозможности использования расширения совместно с другими расширениями движка или из [портала ассетов](/assets).
При сборке основного движка мы используем C++11, но в Windows — C++14. Сборки для консолей сейчас обычно требуют C++14 или новее.

Для нативных расширений мы не используем фиксированную версию C++, а полагаемся на версию по умолчанию в наборе инструментов платформы.

Исходный код Defold избегает использования последних возможностей или версий C++. В основном потому, что при разработке игрового движка нет необходимости в новых возможностях, а также потому, что отслеживание последних изменений в C++ — это трудоёмкая задача, а для полного освоения этих возможностей потребуется много драгоценного времени.

Expand Down
5 changes: 3 additions & 2 deletions docs/zh/manuals/extensions-best-practices.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,9 @@ brief: 本手册介绍了开发原生扩展的最佳实践。

### C++ 版本

Defold 源码是使用每个编译器的默认 C++ 版本构建的。Defold 源码本身使用的 C++ 版本不高于 C++98。虽然可以使用更高版本来构建扩展,但更高版本可能带来 ABI 变化。这可能会使得无法在引擎或[资源门户](/assets)中将一个扩展与其他扩展一起使用。
在构建核心引擎时,我们使用 C++11,但在 Windows 上使用 C++14。现在,主机平台的构建通常需要 C++14 或更高版本。

对于原生扩展,我们不使用固定的 C++ 版本,而是依赖平台工具链的默认版本。

Defold 源码避免使用 C++ 的最新功能或版本。主要是因为在构建游戏引擎时不需要新功能,而且追踪 C++ 的最新功能是一项耗时的任务,真正掌握这些功能需要大量宝贵时间。

Expand Down Expand Up @@ -122,4 +124,3 @@ Defold 在引擎中不使用任何异常。游戏引擎通常避免使用异常
始终确保你可以访问你的依赖项。例如,如果你依赖于 GitHub 上的某些内容,没有什么可以阻止该存储库被删除,或者突然改变方向或所有权。你可以通过分叉存储库并使用你的分叉而不是上游项目来减轻这种风险。

记住,库中的代码将被注入到你的游戏中,所以确保库做了它应该做的事情,而不是其他事情!

2 changes: 1 addition & 1 deletion docs/zh/manuals/extensions-details.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ brief: 本手册介绍了有关编译系统用来编译原生扩展的一些细

## C++ 版本

在引擎里我们用的都是不会高于C++98的版本。你在开发扩展时可能使用了更高的版本,注意高版本可能会引入 ABI 的变化。这可能导致你无法在引擎或者资源商店里使用你的扩展。
引擎里的大部分代码使用的版本不高于 C++98,但有些地方使用 C++11。你在开发扩展时可能使用了更高的版本,注意高版本可能会引入 ABI 的变化。这可能导致你无法在引擎或者资源商店里使用你的扩展。

要记住创建代码库(比如扩展)时,最好选择最具兼容性的版本。

Expand Down
Loading