一旦定义了IntRect,我将如何进行它的更改?
How would I make an IntRect change once it has been defined?
我在SFML中有一个精灵表,我正在尝试自己制作一个动画精灵。我的想法是,只要键盘键被按下,就改变用IntRect完成的边界,但我找不到的是如何使我的IntRect变量改变其定义而不搞砸一切。我希望得到一个可以理解的答案,因为你可以看出我是一个初学者。
我要做的澄清是将sf::IntRect characterRect(0,0,192,192)
更改为(0,192,192,192)
。
如果您正在使用SFML的图形库,那么您可能应该创建sf::Sprite
的子类。更改sf::Sprite
使用的矩形很简单:
mySpriteInstance.setTextureRect(sf::IntRect(0, 192, 192, 192));
请记住,sf::Rect<T>
(和它的别名,例如sf::IntRect
)有意地创建非常便宜。与其改变你已经拥有的属性,不如丢弃它并创建一个新的。只有在明确需要的情况下才需要修改/保持相同的矩形。
关于sf::Sprite类的教程可以在这里找到
相关文章:
- 我的项目不会像"undefined reference to `grpc::g_core_codegen_interface'"那样使用未定义的引用错误进行编译
- 使用自定义比较函数使用std::sort()对矢量字符串进行排序时出现问题
- 在 C++20 中是否不再允许在 std 中对程序定义类型的函数模板进行专用化?
- 为什么用户定义的函数不按照给定的顺序对相同长度的元素进行排序?
- 使用 Google Test 对自定义断言函数进行单元测试
- 如何进行故障排除:未定义对"非虚拟 thunk to ..."的引用
- 如何进行未定义的位移"correct"
- 对 'std::thread::_M_start_thread CMake 的未定义引用进行基准测试
- 如何对命名空间限定类型进行类型定义?
- 如何在C++中允许成员函数的自定义返回类型进行类型擦除?
- 无法使用自定义迭代器进行排序
- 如何使用 STL 排序对具有模板专用化的自定义类对象进行排序?
- 如何使用谷歌基准测试对自定义界面进行基准测试
- 在硬件SIMD矢量指针和相应类型之间进行"interpret_cast"是一种未定义的行为吗
- 使用自定义比较函数在类内进行列表排序
- 使用模板模板参数进行模板定义的函数专用化
- STL按客户"<"运算符对向量进行排序。为什么要将"<"运算符定义为 const?
- 在UE4中,玩家进行光线投射、击中物体并触发自定义事件C++
- .h文件应该是与外部函数的接口;如何在包含标头的.cc文件中进行定义
- basic_string不允许在<TCHAR>声明的位置之外进行定义