• 中文 (中国)
  • 3DCoat文档
  • Chapters
    • 3DCoat简介
    • 入门
    • 界面和导航
    • Brush组件
    • 工作区房间
    • Scripting和Core API
    • 问题和答案
    • licensing
    • 培训教程
  • Pilgway
  • Products
    • 3DCoat
    • 3DCoatTextura
    • 3DCoatPrint
    • PBRLibrary
  • Blog Posts
    • Creating 3D Character Using 3DCoat
  • Store
  • 中文 (中国) 中文 (中国)
    • English English
    • Українська Українська
    • Español Español
    • Deutsch Deutsch
    • Français Français
    • 日本語 日本語
    • Русский Русский
    • 한국어 한국어
    • Polski Polski
    • Português Português
    • Italiano Italiano
    • Suomi Suomi
    • Svenska Svenska
    • 中文 (台灣) 中文 (台灣)
    • Dansk Dansk
    • Slovenčina Slovenčina
    • Türkçe Türkçe
    • Nederlands Nederlands
    • Magyar Magyar
    • ไทย ไทย
    • हिन्दी हिन्दी
    • Ελληνικά Ελληνικά
    • Tiếng Việt Tiếng Việt
    • Lietuviškai Lietuviškai
    • Latviešu valoda Latviešu valoda
    • Eesti Eesti
    • Čeština Čeština
    • Română Română
    • Norsk Bokmål Norsk Bokmål
  • 3DCoat文档
  • Chapters
    • 3DCoat简介
    • 入门
    • 界面和导航
    • Brush组件
    • 工作区房间
    • Scripting和Core API
    • 问题和答案
    • licensing
    • 培训教程
  • Pilgway
  • Products
    • 3DCoat
    • 3DCoatTextura
    • 3DCoatPrint
    • PBRLibrary
  • Blog Posts
    • Creating 3D Character Using 3DCoat
  • Store
  • 中文 (中国) 中文 (中国)
    • English English
    • Українська Українська
    • Español Español
    • Deutsch Deutsch
    • Français Français
    • 日本語 日本語
    • Русский Русский
    • 한국어 한국어
    • Polski Polski
    • Português Português
    • Italiano Italiano
    • Suomi Suomi
    • Svenska Svenska
    • 中文 (台灣) 中文 (台灣)
    • Dansk Dansk
    • Slovenčina Slovenčina
    • Türkçe Türkçe
    • Nederlands Nederlands
    • Magyar Magyar
    • ไทย ไทย
    • हिन्दी हिन्दी
    • Ελληνικά Ελληνικά
    • Tiếng Việt Tiếng Việt
    • Lietuviškai Lietuviškai
    • Latviešu valoda Latviešu valoda
    • Eesti Eesti
    • Čeština Čeština
    • Română Română
    • Norsk Bokmål Norsk Bokmål
Expand All Collapse All
  • 3DCoat简介
  • 入门
    • System requirements
    • Why 3DCoat is Unique?
    • 激活3DCoat
    • 启动错误
      • Startup error Mac
    • Color management
    • Upgrading permanent license
    • Linux Setup
      • Linux initial setup per-user installation
      • Linux initial setup for system
      • Tablet setup
      • To GTK3 from GTK2
      • Error libicuuc.so.70
    • 文件夹结构
      • Custom documents folder
    • 不同形式的“决议”
    • Tablet on Window
    • Import_
    • 3DCoat中的Applinks
      • Blender应用程序链接
        • Blender with the Applink in Linux
      • Blender 4.2/3/4/5 applink
      • Max Applink
      • Houdini applink
      • Lightwave uplink
  • Navigation
    • 打开对话框(快速启动菜单)
    • 导航面板
    • 相机和导航
      • Customize Navigation as Blender
    • Viewport Navigation Gizmo
    • Left tool panel
    •  Activity Bar
    • 使用 3DConnexion 设备导航
      • How to compile Spacenavd on non Ubuntu distro
    • Space Bar Menu
    • Stylus doesn’t work in sculpting
    • 热键
  • 界面和导航
    • 文件菜单
    • 编辑菜单
      • Calculate Curvature
      • Calculate Occlusion
      • Light Baking Tool
      • 优先
    • 查看菜单
    • 对称
    • Textures
    • Calculate
    • 图层菜单
    • 冻结菜单
    • Hide
    • Bake
    • 曲线 2022
      • 曲线菜单
      • Curves Properties RMB
      • 填充网格层
      • Scale of imported curves
    • 窗口菜单
      • 选项卡式 Windows 弹出式面板
      • 滑块
    • Scripts
    • Addons
    • Capture
    • 帮助菜单
    • 客制化
    • 修改或创建新房间
  • Brush组件
    • Brush顶栏
    • 刷子一般用途
      • 创建画笔和贴花
      • 从当前造型制作 alpha
      • 从 3D 对象创建Brush
      • Create brushes based on Curves
      • Load photoshop .abr brushes
    • 笔画
      • 曲线弹出菜单
    • Brush选项
    • 条件限制器
    • 条面板
    • 模板面板
    • 智能材料
      • 添加新图像或材料
      • 将智能材质附加到图层
      • Import Quixel Megascans
    • 如何为Brush创建预设
  • 工作区房间
    • Painting
      • 纹理Painting和模式
        • Per-PixelPainting
        • 位移Painting(微顶点)
        • PtexPainting
        • 表面Painting(Polypainting)
      • 导入Painting室
        • Initial CC subdivision
        • UV Set smoothing
        • Sharp (hard) edge
        • 锁定法线
        • 模型更改后加载新的UV布局
        • DAZ Genesis models into 3DCoat
        • ID map
      • Painting工作区的菜单
        • Edit menu
        • 纹理菜单
          • 纹理Baking工具
        • 隐藏
        • Bake Paint菜单
        • 拾色器
      • Surface Materials
      • Painting的顶栏
      • 图层面板
        • 混合面板
        • Layer and Clipping Masks
      • Painting室工具
      • 不透明度 - 透明度
      • 调整工作区
        • 调整工具集
        • 从调整室导出
      • 蒙版/材质预览面板
      • 从Painting室导出
    • UV工作区
      • UV顶栏
      • UV左工具面板
      • UV预览面板
      • UV工作流程示例
      • 导入UV室
      • 从UV室导出
    • 重新拓扑
      • 导入Retopo Room
      • Retopo Mesh 菜单和 Bake 菜单
        • 虚拟镜像模式
      • Bake menu
        • Treat Poly Groups as Paint Objects
        • Baking guide
      • Retopology 中的笔触工具
      • 顶栏
        • 选择几何体
      • Retopology 房间的左侧工具面板
        • 总体目的和功能
        • 添加几何
        • Retopo工具
        • UV工具
        • 拓扑室命令
      • 自动拓扑
        • Autopo guide
      • 保利集团
    • 塑造
      • Sculpt Layer
      • 造型树
      • 雕刻Brush选项
      • Top Bar
      • Brush引擎
      • 几何子菜单
      • 雕刻“右键单击”菜单
      • 着色器
      • Voxel模式
        • 纯Voxel雕刻
        • 密度和分辨率
        • 黏土引擎
        • Voxel工具
        • 体素上的表面工具
        • Voxel调整工具
        • 立体Painting
        • Voxel对象工具
      • 表面模式
        • 表面工具
        • 表面定制工具
        • Surface Layer
        • 表面调整工具
        • 表面Painting
        • 表面对象工具
        • 多级分辨率
          • Multires tools
          • Multires adjust
          • Multires commands
      • 雕刻曲线
        • 样条曲线
        • Splines model creation
      • 矢量位移
      • 表面变换工具
        • Voxel变换工具
        • Instancer
        • Move
        • Pose
        • Fit
        • Reproject
        • Surface Array
      • Voxel基元和Import工具
      • 实时布尔值
      • 雕刻室的命令
      • Import到造型室
      • 从 Sculpt Room 导出
    • 使成为
      • Comparison of different roughness values
      • 渲染面板功能
      • 转盘
      • 伪造光照 - 非PBR-
    • Factures
      • 工作流程
    • 最简单的
    • 造型
      • Mesh Menu
      • 建模室中的左侧工具面板
        • 添加几何图形
          • 已选择
        • 调整
        • Smart Hybrid
        • UV
          • 命令
        • 整个网格
      • Fluffy 的阁楼表面示例
      • Poeboi 封锁
      • Import Zbrush Polygroups for UV mapping
    • Kitbash - 快速创建 3D 模型
      • Create kitbash
      • Left tool panel Kitbash
    • 3DPrint
    • Photogrammetry
      • How to install Reality Capture
      • Reality Capture doesn’t show up ?
    • 网格到 NURBS 房间
    • Nodes
      • 雕刻着色器节点库
  • Scripting和Core API
    • Scripting
    • Core API
    • Python API
    • Extensions and Addons
  • 免费3DCoatPrint

Linux Setup

1584 views 0

Written by Carlos
June 21, 2024

Hello, dear Linux users!

The ABI incompatibility that we have encountered was the last straw that forced me to switch to Flatpak.

Here is the link to the Flatpak build with a detailed manual on installation:
https://pilgway.com/~sergyi/links-Linux.html

With help from Copilot, I have found and fixed a long-standing problem: the inability to run 3DCoat from the launcher using a Desktop file. After installing 3DCoat as Flatpak, you will see the 3DCoat icon in your Linux launcher.
This build can be unstable.
I see reports from Windows users complaining about the instability of 2026.01 in general. Please consider this build as a packaging test.

Regarding GTK2. A year ago, I ported the code to GTK3. Everything worked except one thing: 3DCoat’s internal modal dialogs, which it draws itself (not system modal dialogs), crashed the app. For more than a month, I investigated the problem without working on anything else. But because of the enormous size of the 3DCoat source code, I wasn’t able to determine the cause.
I reverted to the GTK2 code only because of those internal modal dialogs, and I notified the company that we should implement them differently. I have worked around the file dialog problem by building 3DCoat on Pop!_OS instead of Ubuntu.
The file dialog problem is another ABI incompatibility issue that Flatpak should now solve.

Some questions I have for you. As you know, I have developed the low-level foundation on which 3DCoat runs. That foundation isolates 3DCoat tools from the platform. To do that, I have rewritten each low-level function three times using different API on each platform: WinAPI on Windows, Cocoa on macOS, and GTK on Linux. That process is tedious because you do the same work three times. Moreover, you have to build the project source code three times with different compilers, which introduces optimization errors. In the case of Linux, you have to encounter ABI incompatibility between distributions. Given the complexity of this process, I was looking for an alternative.

Accidentally, in 2021, I learned about WebAssembly and fell in love with it. WebAssembly allows application developers to use a single API and to make a single build that runs everywhere. WebAssembly effectively solves the problem with updates, because users always run the latest uploaded build. I have ported the low-level foundation (let’s call it “engine”) to WebAssembly with deep modifications. You can see it here in action in my game:
https://underseagame.com
I developed this game in 2011 with an artist for iOS, but I have now ported it to my new WebAssembly engine.
What do you think about the idea of reimplementing some 3DCoat functionality on this new WebAssembly engine?
Please consider the real-world limitations of WebAssembly: single-threaded and 32-bit, whereas multithreading and 64-bit support are uneven and experimental. Obviously, the full 3DCoat source code is not portable to WebAssembly because it was not designed for it.
But some tools, some functions, could be.

How do you see the 3DCoat web tool? What essential functions should it have? Before raising this question in the company, I would like to hear your expert opinions.

Sergyi

Tags:linux

Was this helpful?

Yes  1 No
Related Articles
  • Extensions and Addons
  • Surface Layer
  • Error libicuuc.so.70
  • Space Bar Menu
  • Surface Materials
  • Factures
Previously
Upgrading permanent license
Up Next
Linux initial setup per-user installation
AI:
Hi! How can I help you?
Attention: This is a beta version of AI chat. Some answers may be wrong. See full version of AI chat