菜鸟教程小白 发表于 2022-12-11 20:44:48

ios - 用 OpenGL ES 2.0/cocos2d 2.0 画圆的最佳方法?


                                            <p><p>使用 OpenGL ES 2.0 绘制圆的最佳方法是什么?</p>

<p>我正在使用 cocos2d 2.0(当前为测试版)开发一个 iPad/iPhone 项目,该项目使用 OpenGL ES 2.0 和着色器而不是 OpenGL ES 1.0。</p>

<p>在我以前的项目中,我使用了 SneakyInput 包中包含的方便的类 ColoredCircleSprite。但是现在使用 OpenGL ES 2.0,该代码不再工作了,老实说,我在从头开始编写自己的解决方案时有点迷失了。我需要一个绘制平滑圆圈的 CCSprite 子类。 (也许有一点阴影着色器......)</p>

<p>我应该在顶点着色器中构建一个矩形,然后在片段着色器中丢弃圆半径之外的每个像素吗?还是应该在顶点着色器中构建圆形顶点?</p>

<p>网上有没有关于这个主题的好教程?作为 OpenGL-n00b,我将不胜感激!</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>使用 <a href="http://www.learn-cocos2d.com/api-ref/latest/cocos2d-iphone/html/_c_c_drawing_primitives_8h.html#a34d0ad7b8f0d0dbd5fb874d607d69f1d" rel="noreferrer noopener nofollow">ccDrawCircle</a> :</p>

<pre><code>ccDrawCircle(CGPoint center, float radius, float angle,
             NSUInteger segments, BOOL drawLineToCenter);
</code></pre>

<p>增加段数以使圆更平滑。如果你想从代码中学习,可以看看 CCDrawingPrimitives.h 中 ccDrawCircle 的实现。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 用 OpenGL ES 2.0/cocos2d 2.0 画圆的最佳方法?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/8526578/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/8526578/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 用 OpenGL ES 2.0/cocos2d 2.0 画圆的最佳方法?