菜鸟教程小白 发表于 2022-12-12 18:57:10

ios - 用于视网膜显示的 b2PolygonShape/b2Fixture 尺寸加倍?


                                            <p><p>目前我创建了一个像这样的 b2Fixture:</p>

<pre><code>b2PolygonShape spriteShape;
    int num = 3;
    b2Vec2 verts[] = {
      b2Vec2(-29.5f / PTM_RATIO, -49.0f / PTM_RATIO),
      b2Vec2(10.0f / PTM_RATIO, -49.0f / PTM_RATIO),
      b2Vec2(34.2f / PTM_RATIO, -9.2f / PTM_RATIO),
    };
    spriteShape.Set(verts, num);
    bodyFixture.shape = &amp;spriteShape;
    bodyCharacter-&gt;CreateFixture(&amp;bodyFixture);
</code></pre>

<p>问题是在视网膜显示器上它的大小似乎翻了一番,这是有原因的吗?如果是这样,我该如何让它保持相同的大小,这样它就不会被任何东西弄乱设备?</p>

<p>谢谢!</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>我遇到了和你一样的问题。我已将内容比例因子与 PTM_RATIO 相乘。</p>

<p>你可以试试下面的代码并检查一下......它对我有用</p>

<pre><code>int num = 3;
b2Vec2 verts[] = {
    b2Vec2(-29.5f / ( PTM_RATIO * CC_CONTENT_SCALE_FACTOR() ), -49.0f / ( PTM_RATIO * CC_CONTENT_SCALE_FACTOR() )),
    b2Vec2(10.0f / ( PTM_RATIO * CC_CONTENT_SCALE_FACTOR() ), -49.0f / ( PTM_RATIO * CC_CONTENT_SCALE_FACTOR() )),
    b2Vec2(34.2f / ( PTM_RATIO * CC_CONTENT_SCALE_FACTOR() ), -9.2f / ( PTM_RATIO * CC_CONTENT_SCALE_FACTOR() )),
};
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 用于视网膜显示的 b2PolygonShape/b2Fixture 尺寸加倍?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/8934475/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/8934475/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 用于视网膜显示的 b2PolygonShape/b2Fixture 尺寸加倍?