标签: sprite

有谁知道任何精灵集合?

我正在制作2D Java游戏.我希望游戏看起来不错,所以我需要很好的精灵,但我想专注于游戏的编码,而不是图形设计.这个项目有时间限制,所以预制精灵会非常有用.有谁知道任何好的精灵集合?

java 2d sprite

7
推荐指数
1
解决办法
1230
查看次数

使用Canvas.DrawBitmap在Android中进行Sprite旋转.我很接近,我做错了什么?

我有这个精灵旋转算法(它的命名很差,只是用于测试).它是如此接近,用它绘制的精灵旋转.每一帧我都可以加上+5度,看到我漂亮的小精灵旋转.问题是,画布上绘制的其他东西现在都在闪烁.如果我不进行旋转,则常规绘制的精灵效果很好.我想我很接近,但我不知道我错过了什么.下面是我的两个"Draw_Sprite"方法,一个只是将先前资源加载的位图绘制到传入的画布.另一个,做一些旋转最好我知道如何旋转精灵这么多x度...然后绘制它.如果我有一个很好的游戏循环来绘制几个对象,一种类型是旋转的类型.然后非旋转的精灵闪烁,但旋转的精灵永远不会闪烁.

    /*************************************************
 * rotated sprite, ignore the whatever, its for ease of use and testing to have this argument list
 * @param c canvas to draw on.
 * @param whatever ignore 
 * @param rot degrees to rotate
 * @return
 */
public int Draw_Sprite(Canvas c, int whatever, int rot) {   
    //rotating sprite
    Rect src = new Rect(0, 0, width, height);
    Rect dst = new Rect(x, y, x + width, y + height);
    Matrix orig = c.getMatrix();        
    mMatrix = orig;
    orig.setTranslate(0, 0); …
Run Code Online (Sandbox Code Playgroud)

android rotation sprite

7
推荐指数
2
解决办法
1万
查看次数

单击画布上精灵上的区域

我正在用javascript创建一个游戏.目前精灵是div元素,背景图像被更新以创建动画.我听说如果我将元素画布并将精灵blit放到画布上,我可以使精灵可点击,省略透明区域.

我需要一个解决方案,可以点击我的游戏精灵,但可点击的区域适合精灵的形状.它还需要自动化.我不能用预制的点击地图做到这一点.

javascript canvas sprite javascript-events

7
推荐指数
2
解决办法
7162
查看次数

Pygame中的光滑键盘运动

当按下箭头键时,我正在使用此代码让玩家精灵在屏幕上移动:

import pygame, sys, time
from pygame.locals import *

pygame.init()

FPS=30
fpsClock=pygame.time.Clock()

width=400
height=300
DISPLAYSURF=pygame.display.set_mode((width,height),0,32)
pygame.display.set_caption('Animation')
background=pygame.image.load('bg.png')


UP='up'
LEFT='left'
RIGHT='right'
DOWN='down'

sprite=pygame.image.load('down.png')
spritex=200
spritey=130
direction=DOWN


pygame.mixer.music.load('bgm.mp3')
pygame.mixer.music.play(-1, 0.0)
while True:
    DISPLAYSURF.blit(background,(0,0))

    DISPLAYSURF.blit(sprite,(spritex,spritey))

    for event in pygame.event.get():
        if event.type==QUIT:
            pygame.quit()
            sys.exit()

        if event.type == KEYDOWN:
            if (event.key == K_LEFT):
                spritex-=5
                sprite=pygame.image.load('left.png')
            elif (event.key == K_RIGHT):
                spritex+=5
                sprite=pygame.image.load('right.png')
            elif (event.key == K_UP):
                spritey-=5
                sprite=pygame.image.load('up.png')
            elif (event.key == K_DOWN):
                spritey+=5
                sprite=pygame.image.load('down.png')

    pygame.display.update()
    fpsClock.tick(FPS)
Run Code Online (Sandbox Code Playgroud)

图像能够实际移动,但按下按键时只能移动5个像素.我希望图像在按住键的同时保持移动(并且在窗口中添加基本的碰撞检测,但这是一个不同的问题).当按下按键时,图像会继续移动的原因是什么?

python animation pygame sprite game-physics

7
推荐指数
1
解决办法
3万
查看次数

使用Compass/Sass删除附加到sprite文件名的随机字符串

我最近一直在使用Compass和Sass做一些CSS spriting,因为它非常有用.

但是,文件名始终附加随机字符串.例如icons-s5eb424578c.png.而且我不希望附加这个随机字符串,因为这意味着每次发生更改时我都需要上传新的CSS文件和新的精灵图像.

那么,有没有人知道Compass gem目录中的哪个Ruby或其他配置文件,即附加这个随机字符串?然后我可以只为该位注释代码.除非我错过了一个官方变量,否则我可以在Compass中设置告诉它我不希望附加这个字符串?

在此先感谢任何帮助.

css ruby sass sprite compass-sass

7
推荐指数
2
解决办法
3734
查看次数

检测Sprite Collision而不在SpriteKit中反弹

我是使用SpriteKit/Swift进行编码的新手,并且遇到以下问题:一个角色应该通过跳入它们来收集硬币.检测碰撞并摆脱收集的硬币是没有问题的,但是我的角色在硬币消失之前会反弹.

该角色应该通过硬币飞行并在途中收集它.

let playerCategory: UInt32 = 0x1 << 0
let coinCategory: UInt32 = 0x1 << 1
Run Code Online (Sandbox Code Playgroud)
player = SKSpriteNode(texture: playerTexture)
player.physicsBody = SKPhysicsBody(circleOfRadius: player.size.height / 2)
player.physicsBody?.dynamic = true
player.physicsBody?.allowsRotation = false
player.physicsBody?.categoryBitMask = playerCategory
player.physicsBody?.contactTestBitMask = coinCategory

var coin:SKSpriteNode = SKSpriteNode(texture: coinTexture)
coin.physicsBody = SKPhysicsBody(circleOfRadius: coin.size.height / 2)
coin.physicsBody?.dynamic = false
coin.physicsBody?.allowsRotation = false
coin.physicsBody?.categoryBitMask = coinCategory
coin.physicsBody?.contactTestBitMask = playerCategory
Run Code Online (Sandbox Code Playgroud)
func playerDidCollideWithCoin(player:SKSpriteNode, thisCoin:SKSpriteNode) {
    thisCoin.removeFromParent()
    coinsCollected++
}
Run Code Online (Sandbox Code Playgroud)

碰撞检测工作正常,但正如我所说,我怎样才能避免撞击并用"飞越"代替?

我正在使用Xcode 6 Beta 7

提前致谢!

以下评论中的解决方案;)

sprite ios sprite-kit swift xcode6

7
推荐指数
1
解决办法
2783
查看次数

在JavaFX中如何在屏幕上移动精灵?

我是JavaFX的新手,我正在尝试编写一个动画2D角色穿过屏幕的游戏(例如最初的塞尔达传说游戏).我在Swing中完成了这个,通过创建我自己的Sprite类并覆盖Swing中的paintComponent()方法,然后放入我自己的g2d.drawImage(...); 在那里调用,它将正确的子帧从Sprite复制到JPanel中正确的x,y目的地,从而实现动画(行走)2D图像在屏幕上的移动.

我怎么能在JavaFX中做到这一点?我找到了关于如何创建精灵的一个很好的例子:http: //blog.netopyr.com/2012/03/09/creating-a-sprite-animation-with-javafx/ 在JavaFX中,但我该如何做PaintComponent和drawImage(...)部分?JavaFX是否有与PaintComponent等效的方法重新绘制所有内容?我试过调用primaryStage.show(); 方法,但是没有用.

我想我不清楚如何设置我的主游戏循环,触发刷新并在不同的x,y位置在场景上绘制图像?

什么是JavaFX等同于drawImage(...)方法?这种方法允许我在任何给定的x,y偏移处将源图像的一部分复制到目标场景中.这就是我在Swing中在屏幕上移动动画精灵的方法.

最好的祝福,

Zareh

animation translation javafx sprite game-loop

7
推荐指数
1
解决办法
1万
查看次数

跨域 svg 精灵

我知道有很多方法可以在 HTML 中使用 SVG 精灵。我对这个日期的偏好是使用类似的东西

<div class="container">
   <svg class="icon">
     <title>Icon Title</title>
     <use xlink:href="/svg/sprite.svg#icon"/>
   </svg>
</div>
Run Code Online (Sandbox Code Playgroud)

但是,现在我想从子域加载精灵,如下所示:

<div class="container">
   <svg class="icon">
     <title>Icon Title</title>
     <use xlink:href="https://sub.domain.com/svg/sprite-home.svg#icon"/>
   </svg>
</div>
Run Code Online (Sandbox Code Playgroud)

不幸的是,这不起作用,因为未获取文件。我也试过<object>,但这似乎也不起作用。

到目前为止,我只能使用

<?php include_once("https://sub.domain.com/svg/sprite.svg"); ?>
Run Code Online (Sandbox Code Playgroud)

可以作为快速修复,因为这不涉及太多重构。然而,这也意味着 HTML 变得臃肿。

使用该<use>方法,精灵被缓存。但是使用该include方法,精灵不会被缓存,只会被嵌入,因此它远非理想。

有没有人使用与跨域请求和浏览器缓存兼容的 php include 方法的任何替代方法?

html svg sprite cross-domain

7
推荐指数
1
解决办法
8660
查看次数

为什么我的图像没有绘制在 HTML5 画布上?

我正在按照教程并设置我的代码..但是当我运行它时,我会收到一条错误消息

“(索引):18 未捕获的 InvalidStateError:无法在“CanvasRenderingContext2D”上执行“drawImage”:提供的 HTMLImageElement 处于“损坏”状态。”

这是我在 indexSoccer.html 文件中运行的代码,

    var ctx = document.getElementById("ctx").getContext("2d");

    var Img = {};
    Img.player = new Image();
    Img.player.src = 'images/cat1sprite.png';

    drawPlayer = function(player){
        ctx.save();
        var x = player.x;
        var y = player.y;
        ctx.drawImage(Img.player, x, y);
        ctx.restore();

    }
Run Code Online (Sandbox Code Playgroud)

我的目录如下所示 -

在此输入图像描述

有什么想法为什么吗?

html javascript canvas image sprite

7
推荐指数
2
解决办法
2万
查看次数

如何在 pygame 中围绕精灵或图像绘制边框?

我想在图像周围绘制红色边框,但不知道如何做。

我尝试填充Hero精灵的图像并将 colorkey 设置为 red self.image.set_colorkey(red),但这会使图像不可见。

在图像上绘制一个红色矩形,将其完全填充:pygame.draw.rect(self.image, red, [0, 0, width, height])

我只想要一个红色边框,以帮助将来进行碰撞检测。

main.py中的代码:

import pygame
from pygame import *
import sprites
from sprites import *
pygame.init()

width = 640
height = 480
color = (255, 255, 255) #white
x = 0
y = 0
speed = 3

screen = pygame.display.set_mode((width, height))
pygame.display.set_caption("Mushroom")
icon = pygame.image.load('icon.bmp')
pygame.display.set_icon(icon)
sprites_list = pygame.sprite.Group()

hero = Hero('mushroom.png', 48, 48)
hero.rect.x = 200;
hero.rect.y = 300;

sprites_list.add(hero)

running = …
Run Code Online (Sandbox Code Playgroud)

python pygame image surface sprite

7
推荐指数
1
解决办法
9679
查看次数