Design as Code|VGG 社区邀你参加开源之夏 ,赢万元奖金

原创
05/06 09:44
阅读数 224

VGG 开源社区正式入选开源之夏 2024!

VeryGoodGraphics (VGG) 旨在无代码完美还原设计稿,通过自研并开源的 VGG 矢量图形格式和 VGG 渲染引擎能把设计原型作为应用快速交付。VGG 打通了从应用 UI 设计到应用研发的完整流程,使得开发者可以像素级完美还原设计稿的任何细节,并确保全平台渲染效果一致。

2024年「开源之夏」是由中国科学院软件研究所 “开源软件供应链点亮计划” 发起并长期支持的一项暑期开源活动,旨在鼓励在校学生积极参与开源软件的开发维护,促进优秀开源软件社区的蓬勃发展,培养和发掘更多优秀的开发者。

 

 

可以获得什么

  • 结识图形图像领域开源社区小伙伴和技术大牛
  • 获得社区导师的专业指导,与开源项目开发者深度交流
  • 丰富项目实践经验,提升项目开发技能
  • 为学习方向提供参考,为职业发展积累人脉
  • 获得结项奖金和结项证书:通过结项考核的学生将有机会获得优秀学生证书。

 

面向哪些学生

 

  • 本活动面向年满 18 周岁在校学生。

  • 暑期即将毕业的学生,只要在申请时学生证处在有效期内,就可以提交申请。

  • 中国籍学生参与活动需提供身份证、学生证、教育部学籍在线验证报告(学信网)或在读证明。

  • 外籍学生参与活动需提供护照,同时提供录取通知书、学生卡、在读证明等文件用于证明学生身份。

 

/ 题目一:实现一个 SVG 到 VGG 的转换 /

VeryGoodGraphics (VGG) 是一种全新的基于 JSON 的矢量图形格式,而 Scalable Vector Graphics (SVG) 是目前应用比较广泛的基于 XML 的矢量图形格式。

目前需要开发一个将 SVG 文件转化为 VGG 格式的转换器:

  • VGG 格式的介绍与规范:

https://docs.verygoodgraphics.com/specs/overview

  • 初步的框架供参考:

https://github.com/verygoodgraphics/vgg_svg_parser/ 

  • VGG 有一个官方的使用 C++ 开发的运行时,可渲染 VGG 文件:

https://github.com/verygoodgraphics/vgg_runtime/

  • VGG 也提供该运行时的 web 版本:

https://github.com/verygoodgraphics/vgg_web/

预期产出

完成 SVG to VGG 转换器的开发,并且能够在 VGG 中还原大部分 SVG 素材文件的渲染效果。

开发者要求

TypeScript 或 JavaScript;对矢量图形与 SVG 有一定了解;乐于沟通
/ 题目二:实现 VGG 安卓容器 / VeryGoodGraphics (VGG) 也是一种基于 Design-as-Code 理念的跨平台应用开发框架,底层有两大基础:

1、VGG 矢量图形格式标准(类似 SVG,但是基于 JSON 格式)

2、VGG 运行时,用于 VGG 文件的跨平台渲染与业务逻辑的执行

VGG 容器是一种基于 VGG 运行时的一种封装,主要是为各种平台与开发框架提供开箱即用的 VGG 运行能力。目前 VGG 官方已经有实现针对 Web/iOS/Qt 的容器,而安卓平台也是一个非常重要的应用平台,需要为它实现相应的 VGG 容器。

预期工作与产出

实现 VGG 容器的主要工作包括(但不限于):

  • 为目标平台/开发框架适配图形上下文(一般是 OpenGL/GL ES 上下文,不排除 Vulkan 上下文的可能性)
  • 适配消息事件
  • 适配 VGG 运行时的接口

特别地,因为 VGG 运行时是 C++ 实现,因此针对安卓平台,可能涉及到利用安卓 NDK 将 VGG 运行时交叉编译到适用于安卓的 ARM 二进制目标文件,将原生代码的接口封装成 Java/Kotlin 接口,最终为安卓开发者用户提供开箱即用的安卓组件。

最终完成一个开箱即用的可运行 VGG 文件的安卓组件,并提供文档与二进制包。

开发者要求

熟悉 C++、CMake、安卓 NDK;熟悉 OpenGL/GL ES/Vulkan 接口;乐于沟通

 

参考资料

1、VGG 运行时:

https://github.com/verygoodgraphics/vgg_runtime

2、VGG 容器: https://docs.verygoodgraphics.com/containers/overview

 

👏欢迎社区小伙伴参与共建


 

更多流程规范,感兴趣的同学可以前往开源之夏官网关注:

https://summer-ospp.ac.cn/ https://summer-ospp.ac.cn/help/student/

 

 

 

关于 VGG

VGG(VeryGoodGraphics)是新一代跨平台应用开发解决方案。VGG 倡导 Design-as-Code 的理念,让开发者可直接基于设计稿编程,快速将设计原型交付为可交互的应用。
特性一:无代码完美还原设计稿
VGG 自研的开源图形引擎能渲染出高保真设计稿中的任意细节,可直接将设计稿作为用户界面,省去前端与客户端开发者使用代码去复原设计稿的开发工作,降低他们与设计师之间的沟通摩擦成本。
特性二:原生跨平台、嵌入式支持已有开发框架
VGG 通过完全或者部分嵌入的方式,支持在任意一种已有的 APP 基础上进行增量式开发,主持主流平台与框架。
特性三:脚本与 WebAssembly 支持
VGG 还同时支持平台无关的 JS 脚本与 WebAssembly 模块,在提供快速业务逻辑开发能力的同时支持高性能计算。
特性四:高度的生态兼容性
VGG 提供的 SaaS 服务目前已实现对主流设计生态的兼容(Figma/Sketch/Adobe Illustrator),并提供 Figma 插件帮助设计稿快速同步。将来还计划为开发者提供开发辅助工具,打通从应用 UI 设计到应用研发的完整流程。

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部