opengl/webgl 可以部分重绘吗?
我是webgl的初学者,在学习过程中发现教程中讲解 webgl 动画的时候,基本都是清除屏幕,然后应用变换,重新绘制这样的过程来达到动起来的效果。 但是我想,如果在一个非常复杂的场景中,只有一个很小的部分在移动,那么是否可以只绘制这很小的一部分不用全部的重新绘制呢?
回复内容:
实践上通常没太大意义。因为对于一个典型的3D场景,很多影响是全局的。比如一个物体的投影,很可能投到离得很远的另一个物体上。再比如运动模糊、ambient occlusion这类二维特效,也得是在整个场景渲染到二维的基础上。你只刷屏幕上面的一个块,就“不对”了。实际上,3D场景的剪裁,通常在场景图上完成,而不是在屏幕空间上搞。 用scissor test,你就可以只clear一部分,只画那块区域的物体,再配合EGL_NV_post_sub_buffer,就可以只swap一部分。
但是实际使用中,你仍会发现这么做没意义,几乎所有时候你都会需要刷全屏。 如上面大家所说的 scissor test 可以做这个。不过一般3d场景用这个意义不大。因为你这个移动的小物体,可能影响到其他物体或者全局绘制的物体。这种情况下还是要重绘的。
但在特殊的一些场景上可以用到:
1 比如那种3d编辑器的左视图,上视图,下视图等等。在不同的区域显示不同的视角。
2 立体3D 需要绘制左眼/右眼 区域。其实和1类似。
3 3D UI,就是基于OpenGL/ES 接口做的 2D UI效果。比如安卓UI系统/一些电视上Launcher等等。 你说的这种情况在远程绘制的时候有应用。
比如一个类似足球游戏的场景,其实显示端不太关注观众台,这样观众台的信息是不用每帧都传输的(只需要第一帧的时候传输背景,之后可以若干帧传输一次,或者再也不传输)。
但是我说的这个应用和你所描述的是不一样的,因为远程绘制的瓶颈可能是网络,而不是绘制时间。 可以的,渲染视频的时候就这么做过。

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



In dem Artikel werden die Meta-Tags mit Ansichtsfenster besprochen, um die Seite zu steuern, die auf mobilen Geräten skaliert und sich auf Einstellungen wie Breite und initiale Maßstäbe für optimale Reaktionsfähigkeit und Leistung konzentriert.Character Count: 159

In diesem Artikel wird erläutert, wie Audio in HTML5 mit dem & lt; audio & gt; Element, einschließlich Best Practices für die Formatauswahl (MP3, OGG Vorbis), Dateioptimierung und JavaScript -Steuerung für die Wiedergabe. Es betont die Verwendung von mehreren Audio f f

In dem Artikel wird die Verwaltung der Privatsphäre und Berechtigungen des Benutzerstandorts mithilfe der Geolocation -API erörtert, wobei die Best Practices für die Anforderung von Berechtigungen, die Gewährleistung der Datensicherheit und die Einhaltung der Datenschutzgesetze hervorgehoben werden.

In diesem Artikel werden interaktive HTML5 -Spiele mit JavaScript erstellt. Es umfasst das Spieldesign, die HTML -Struktur, das CSS -Styling, die JavaScript -Logik (einschließlich Ereignisbearbeitung und -animation) und die Audio -Integration. Essentielle JavaScript -Bibliotheken (Phaser, PI

In diesem Artikel wird erläutert, wie HTML5 -Formulare erstellt und validiert werden. Es beschreibt die Form & gt; Element, Eingabetypen (Text, E -Mail, Nummer usw.) und Attribute (erforderlich, Muster, min, max). Die Vorteile von HTML5 -Formen gegenüber älteren Methoden, inkl.

In dem Artikel werden die Sichtbarkeits -API der HTML5 -Seite mit der Sichtbarkeit von Seiten ermittelt, die Benutzererfahrung verbessert und die Ressourcennutzung optimiert. Zu den wichtigsten Aspekten gehören die Pause, die Verringerung der CPU -Last und die Verwaltung von Analysen auf der Grundlage von Sichtbarkeitsänderungen.

In dem Artikel wird erläutert, wie die HTML5 -Drag & Drop -API verwendet wird, um interaktive Benutzeroberflächen zu erstellen, Schritte zu detaillieren, um Elemente draggierbar zu machen, Schlüsselereignisse zu verarbeiten und Benutzererfahrung mit benutzerdefiniertem Feedback zu verbessern. Es wird auch gemeinsame Fallstricke zu a diskutiert

In diesem Artikel werden die HTML5 WebSockets-API für die Kommunikation zwischen bidirektionaler Client-Server in Echtzeit erläutert. Es werden clientseitige (JavaScript) und serverseitige (Python/Flask) -implementierungen beschrieben, die Herausforderungen wie Skalierbarkeit, staatliches Management, ein
