https://www.purebasic.fr/english/viewto … mp;t=77272
Теперь PB может транслировать код не только в асссемблер, но и в Си.
Весь список изменений.
- Added: Apple M1 support ! - Added: Raspberry support (32-bit and 64-bit) ! - Added: a new C backend compiler for all PureBasic versions - Added: #PB_Compiler_Backend, #PB_Backend_C and #PB_Backend_Asm compiler constants - Added: #PB_Compiler_64Bit and #PB_Compiler_32Bit compiler constants - Added: #PB_Compiler_Optimizer which is set to #True if the optimizer is enabled - Added: support for Windows 11, OS X 11 and 12 for OSVersion() - Added: /OPTIMIZER, -z, --optimizer flag to the commandline, and a 'Use code optimizer' checkbox in IDE 'Compiler Options' to turn on C optimizations - Added: auto DPI support for Menu and ToolBar library (Windows) - Added: WebGadget() support for GTK3 on linux - Added: CreateShader(), CreateShaderMaterial(), MaterialShaderAutoParameter(), MaterialShaderParameter(), MaterialShaderTexture() - Added: optional parameter to MeshFace() to create a quad - Added: optional force vector to WorldGravity() - Added: optional position mode to ApplyEntityForce() - Added: GetEntityMesh(), CreateCubicTexture(), CreateAnimatedMaterial() - Added: new mode to CreateDataMesh(): #PB_Mesh_DiagonalShortestLength, #PB_Mesh_DiagonalClosestNormal, #PB_Mesh_DiagonalAlternate, #PB_Mesh_DiagonalRegular1, #PB_Mesh_DiagonalRegular2 - Added: new structures: Vector3, Vector4 - Added: predefined shaders: #PB_Material_ColorShader, #PB_Material_PerpixelShader, #PB_Material_BumpShader, #PB_Material_SkyShader, #PB_Material_WaterShader, #PB_Material_WaterShaderRTT, #PB_Material_OceanShader, #PB_Material_PointSpriteSphereShader - Added: new modes for SetMaterialAttribute(): #PB_Material_PointSprite, #PB_Material_DepthBias - Added: new optional 'Color' parameter to CreateMaterial() - Added: new optional 'SpecularColor' parameter to MaterialShininess() - Added: new optional 'v' and 'w' parameter to MeshVertexTextureCoordinate() - Added: new optional 'Lod' parameter to CreateCamera() - Added: new modes for AddMaterialLayer(): #PB_Material_ModulateX2, #PB_Material_ModulateX4, #PB_Material_AddSigned, #PB_Material_Substract, #PB_Material_BlendDiffuseAlpha, #PB_Material_BlendCurrentAlpha - Added: New contextual constant display for AutoComplete in IDE (Fr34k) - Added: 3 new triggers for custom tools in IDE: 'OpenFile - Non-PB binary file', 'OpenFile - Non-PB text file', 'OpenFile - with specific extension' (HeX0R101) - Added: New 'Replace' shortcut (CTRL+H) which opens the find dialog with replace enabled in IDE (ChrisRfr) - Updated: SetMaterialColor() can now use several colortypes at once using '|' - Updated: fasm, polink, polib and porc to lastest versions (Windows) - Updated: Movie library on OS X to support modern OS X version - Updated: Mouse library on Windows to use RawInput instead of DirectX to support HighDPI mouse - Updated: SQLite to 3.38.2 - Updated: zlib to 1.12.12 - Updated: libpq (PostgreSQL) to 14.2 - Changed: renamed structures PB_MeshFace -> MeshFace and PB_MeshVertex -> MeshVertex - Changed: the name of the /EXE commandline flag to /OUTPUT to be more coherent (still work for backcompatibilty but not documented anymore) - Changed: the short version of /CONSTANT from '-o' to '-co' as '-o' is now used for /OUTPUT - Changed: the way the map elements are created when using passive syntax, to be more consistent - Changed: the default subsystem for screen/sprite is now OpenGL on Windows for more consistency. DirectX9 is still available as a subsystem. - Changed: enabled backface culling for sprite OpenGL subsystem to be faster and be in line with DirectX9/11 - Changed: InitNetwork() is no more needed to use network functions (deprecated) - Removed: x86 version of PureBasic for OS X as it's no more supported since OS X Catalina (Minimum supported OS X is now 10.10 - released in 2014). - Removed: the 'Help' library on Linux - Removed: Nvidia CG support for OGRE as it's no more supported by Nvidia since a while - Removed: ToolBarStandardButton() as it doesn't support high DPI