Tag: 精灵

ELF文件和bin文件有什么区别?

由complier生成的最终图像包含bin文件和扩展加载程序格式的ELf文件,这两者之间有什么区别,特别是ELF文件的实用性。

如何findLinux(ELF)二进制文件的直接共享对象依赖关系?

我如何轻松findLinux二进制文件(ELF格式)的直接共享对象依赖关系? 我知道ldd工具,但似乎输出二进制文件的所有依赖关系,包括二进制文件依赖的任何共享对象的依赖关系。

SpriteKit的带有多边形辅助工具的SKPhysicsBody

我想知道是否有一个工具可以用于轻松生成SpriteKit中的复杂物理实体。 我想有一个基于体积的物体与多边形types的形状。 SpriteKit允许使用该方法创build这样的实体: + (SKPhysicsBody *)bodyWithPolygonFromPath:(CGPathRef)path 不幸的是,手动生成这样的path是一项耗时的任务,而且在testing时可能会产生问题。 有一个SpriteHelper应用程序,允许你在易于使用的可视化编辑器中定义身体形状,但是这个应用程序不能导出这里可以使用的path。 它是为cocos2d制作的,它做了很多像纹理包装等我不需要的东西,我不能用于SpriteKit。 有谁知道一个解决scheme,将允许定义CGPath的很容易,甚至可以自动生成它们与alpha通道的PNG图像? 虽然从我的经验来看,自动生成function需要优化,因为当纹理可能具有更复杂的形状时,身体的形状应该尽可能简单。

如何检索用于编译给定的ELF可执行文件的GCC版本?

我想检索用于编译给定的可执行文件的GCC版本。 我尝试readelf但没有得到的信息。 有什么想法吗?

R_X86_64_32S和R_X86_64_64重定位是什么意思?

当我尝试在64位FreeBSD中编译一个C应用程序时出现以下错误: 在创build共享对象时不能使用R_X86_64_32S; 用-fPIC重新编译 什么是R_X86_64_32S重定位,什么是R_X86_64_64 ? 我已经search了这个错误,这可能是因为 – 如果有人能说出R_X86_64_32S的真正含义,那将是非常棒的。

为什么ELF执行入口点forms为0x80xxxxx的虚拟地址而不是零0x0?

执行时,程序将从虚拟地址0x80482c0开始运行。 这个地址不是指向main()过程,而是指向由链接器创build的名为_start的过程。 到目前为止,我的Google研究只是引发了一些(含糊)的历史猜测: 有一个民间传说,0x08048000曾经是STACK_TOP(也就是栈从0x08048000附近向0向下生长)在* NIX的端口到i386,是由加利福尼亚州圣克鲁兹的一个小组发布的。 这是128MB内存昂贵,而4GB的RAM是不可想象的。 任何人都可以确认/否认这一点?

C / C ++与GCC:静态添加资源文件到可执行文件/库

有没有人有一个想法如何使用GCC静态编译任何资源文件到可执行文件或共享库文件? 例如,我想添加永不改变的图像文件(如果他们这样做,我将不得不更换文件),并不希望他们躺在文件系统中。 如果这是可能的(我想这是因为Windows的Visual C ++也可以这样做),我怎样才能加载存储在自己的二进制文件? 可执行文件是否parsing自己,find文件并从中提取数据? 也许有一个GCC的选项,我还没有看到。 使用search引擎并没有真正吐出正确的东西。 我需要这个工作共享库和普通的ELF可执行文件。 任何帮助表示赞赏

如何多次绘制相同的运动图像?

你好我正在做一个平台游戏,当你按下空间时,angular色会拍摄一个移动到屏幕上的火球,但是当你再次按下空间的时候,火球的坐标将被重新设置到玩家的坐标上,而不是绘制另一个我想要的火球。 import java.awt.*; import javax.swing.*; public class Fire extends JPanel{ Image fireball; private int x=155000,y=155000; Player player = new Player(); public void paint(Graphics g){ g.drawImage(fireball, x, y, null); } public Fire(){ } public void update(){ fireball = new ImageIcon("C:\\Users\\steven.greens10\\Desktop\\Programs\\Raw Java\\Platform\\res\\fireball.png").getImage(); x+=5; if(x > 640){ x=155000; } } public void shoot(Player p){ x = p.getX(); y […]