实时渲染学习(九)非真实感渲染(NPR)相关技术总结

2023-10-28 00:20

本文主要是介绍实时渲染学习(九)非真实感渲染(NPR)相关技术总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

参考博文:【《Real-Time Rendering 3rd》 提炼总结】(十) 第十一章 · 非真实感渲染(NPR)相关技术总结

前言

大体浏览了本章内容,主要介绍模拟艺术绘制风格的非真实感渲染,不是我当前学习和关注的领域,所以本章内容就简单记录,有需要深入了解的朋友可以点击文章顶部的原博链接查看。
本章知识概览:

  • 非真实感渲染的基本思想和相关领域
  • 卡通渲染
  • 轮廓描边的几种实现流派
    1)基于视点方向的描边
    2)基于过程几何方法的描边
    3)基于图像处理生成的描边
    4)基于轮廓边缘检测的描边
    5)混和轮廓描边
  • 其他风格的NPR渲染技术
    1)纹理调色板(Palette of Textures)
    2)色调艺术图(Tonal Art Maps,TAM)
    3)嫁接(Graftals)
  • 水彩风格的NPR

一、非真实感渲染

非真实感渲染(Non-Photorealistic Rendering,NPR), 也称为风格化渲染,旨在模拟艺术式的绘制风格。
真实感绘制与非真实感绘制对比

二、卡通渲染

卡通渲染(Toon Rendering,又称Cel Rendering),是一种特殊形式的NPR。卡通着色的三要素:

  • 锐利的阴影(Sharp shadows)
  • 少有或没有高亮的点(Little or no highlight)
  • 对物体轮廓进行描边(Outline around objects)

三、轮廓描边的渲染方法小结

轮廓描边的渲染方法可以分为以下五种:
1)基于视点方向的描边(利用视点方向与表面法线之间的点乘结果获得轮廓信息)
2)基于过程几何方法的描边(先渲染正向表面,再渲染背向表面,从而使轮廓边缘可见)
3)基于图像处理的描边(寻找相邻Z缓冲数值的不连续性可确定轮廓线的位置)
4)基于轮廓边缘检测的描边(检测轮廓边缘并直接进行绘制)
5)混和轮廓描边(结合方法2)和3))

四、其他风格的NPR渲染技术小结

其他风格的NPR渲染技术:

  • 纹理调色板(Palette of Textures)
  • 色调艺术图(Tonal Art Maps,TAM)
  • 嫁接(Graftals)

这篇关于实时渲染学习(九)非真实感渲染(NPR)相关技术总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/289404

相关文章

在Java中实现线程之间的数据共享的几种方式总结

《在Java中实现线程之间的数据共享的几种方式总结》在Java中实现线程间数据共享是并发编程的核心需求,但需要谨慎处理同步问题以避免竞态条件,本文通过代码示例给大家介绍了几种主要实现方式及其最佳实践,... 目录1. 共享变量与同步机制2. 轻量级通信机制3. 线程安全容器4. 线程局部变量(ThreadL

深入浅出SpringBoot WebSocket构建实时应用全面指南

《深入浅出SpringBootWebSocket构建实时应用全面指南》WebSocket是一种在单个TCP连接上进行全双工通信的协议,这篇文章主要为大家详细介绍了SpringBoot如何集成WebS... 目录前言为什么需要 WebSocketWebSocket 是什么Spring Boot 如何简化 We

springboot自定义注解RateLimiter限流注解技术文档详解

《springboot自定义注解RateLimiter限流注解技术文档详解》文章介绍了限流技术的概念、作用及实现方式,通过SpringAOP拦截方法、缓存存储计数器,结合注解、枚举、异常类等核心组件,... 目录什么是限流系统架构核心组件详解1. 限流注解 (@RateLimiter)2. 限流类型枚举 (

Python实现PDF按页分割的技术指南

《Python实现PDF按页分割的技术指南》PDF文件处理是日常工作中的常见需求,特别是当我们需要将大型PDF文档拆分为多个部分时,下面我们就来看看如何使用Python创建一个灵活的PDF分割工具吧... 目录需求分析技术方案工具选择安装依赖完整代码实现使用说明基本用法示例命令输出示例技术亮点实际应用场景扩

Spring Boot 与微服务入门实战详细总结

《SpringBoot与微服务入门实战详细总结》本文讲解SpringBoot框架的核心特性如快速构建、自动配置、零XML与微服务架构的定义、演进及优缺点,涵盖开发环境准备和HelloWorld实战... 目录一、Spring Boot 核心概述二、微服务架构详解1. 微服务的定义与演进2. 微服务的优缺点三

Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式

《Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式》本文详细介绍如何使用Java通过JDBC连接MySQL数据库,包括下载驱动、配置Eclipse环境、检测数据库连接等关键步骤,... 目录一、下载驱动包二、放jar包三、检测数据库连接JavaJava 如何使用 JDBC 连接 mys

JavaSE正则表达式用法总结大全

《JavaSE正则表达式用法总结大全》正则表达式就是由一些特定的字符组成,代表的是一个规则,:本文主要介绍JavaSE正则表达式用法的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录常用的正则表达式匹配符正则表China编程达式常用的类Pattern类Matcher类PatternSynta

Qt如何实现文本编辑器光标高亮技术

《Qt如何实现文本编辑器光标高亮技术》这篇文章主要为大家详细介绍了Qt如何实现文本编辑器光标高亮技术,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以了解下... 目录实现代码函数作用概述代码详解 + 注释使用 QTextEdit 的高亮技术(重点)总结用到的关键技术点应用场景举例示例优化建议

使用Python和OpenCV库实现实时颜色识别系统

《使用Python和OpenCV库实现实时颜色识别系统》:本文主要介绍使用Python和OpenCV库实现的实时颜色识别系统,这个系统能够通过摄像头捕捉视频流,并在视频中指定区域内识别主要颜色(红... 目录一、引言二、系统概述三、代码解析1. 导入库2. 颜色识别函数3. 主程序循环四、HSV色彩空间详解

OpenCV实现实时颜色检测的示例

《OpenCV实现实时颜色检测的示例》本文主要介绍了OpenCV实现实时颜色检测的示例,通过HSV色彩空间转换和色调范围判断实现红黄绿蓝颜色检测,包含视频捕捉、区域标记、颜色分析等功能,具有一定的参考... 目录一、引言二、系统概述三、代码解析1. 导入库2. 颜色识别函数3. 主程序循环四、HSV色彩空间