准备工作
1)这是我在网上找的素材,这些图片我放在名为bim的文件夹中
2)将文件夹(bim)放在你创建的项目中
代码
话不多说直接上代码
#include <stdio.h>
#include <graphics.h> // EasyX 图形库头文件
#include <conio.h> // 用于检测键盘输入
#define WIDTH 1000
#define HEIGHT 800
// 全局变量
IMAGE img[8]; // 存储8张图片
// 函数声明
void loadImages(); // 加载图片
void drawFrame(int x, int y); // 绘制一帧
//void releaseResources(); // 释放资源
int main() {
// 初始化图形窗口
initgraph(WIDTH, HEIGHT);
loadImages(); // 加载图片
// 角色的初始位置
int manX = WIDTH * 0.4 - img[0].getwidth() * 0.5;
int manY = HEIGHT * 0.4 + img[0].getheight();
while (1) {
// 清除屏幕,避免叠加残影
cleardevice();
// 绘制帧
drawFrame(manX, manY);
// 检测按键退出
if (_kbhit() && _getch() == 27) { // 按 ESC 键退出
break;
}
}
closegraph(); // 关闭图形窗口
return 0;
}
// 加载图片
void loadImages() {
char name[30];
for (int i = 0; i < 8; i++) {
sprintf_s(name, "bim/re%d.jpg", i); // 构造图片路径
loadimage(&img[i],name); // 加载图片文件
}
}
// 绘制图像
void drawFrame(int x, int y) {
for (int i = 0; i < 8; i++) {
putimage(x, y, &img[i]); // 绘制指定图片
Sleep(40);
}
}
中间可能遇到的问题
1)
loadimage(&img[i],name);
出现重载参数不匹配类似问题,需要在项目中找到属性,在配置属性中找到高级(网上有些人说是在常规),总之要找到字符集属性,将其改为使用多字节字符集
2)图片格式问题(这个是我之前查过资料看到的)
这些图片最好在通过打开方式(画图)过一下,这些是之前我了解的,大概是这个意思。(勿喷)
//以上的问题是我遇到的
效果展示
屏幕录制 2024-10-24 211035
/*这篇文章中可能看不了视频,不过视频我已经上传,在我主页上可以看到。
视频里的人物动作有些不连贯,很大部分的原因是人物素材的不足。如果想要素材很完整的话大概是需要付费的,我这里就是一个效果演示,粗糙了一点请见谅。*/