如何在Corona SDK中通过多个图像为一个对象制作多个动画?

时间:2019-05-17 06:04:00

标签: animation corona sprite-sheet

我刚刚学习了用Corona SDK编程的知识。最近,我在为对象设置动画时遇到问题。我已经看到了有关电晕中动画的所有说明,并且只看到了如何用单个图像为对象制作动画(它们使用一个图像使对象具有两个或更多动画)https://www.youtube.com/watch?v=VsA2agBAWho&t=322s。我已经照做,当我在Internet上找到资产时,问题就开始了,这里的链接是https://finalbossblues.itch.io/pixel-platformer-pack?download。如您所见,该文件夹具有用于多个动画的多个图像。我不知道,也没有参考来为我的播放器的所有动画制作多幅图像(但是我可以用一张图像来做)。

我已经找到了解决Internet上所有问题的方法,但是没有适合我的结果。 :((

结果,我有一个转储和不良代码:

        -----------------------------------------------------------------------------------------
--
-- main.lua
--
-----------------------------------------------------------------------------------------

-- My code here

local sheetData = {
    width = 30,
    height = 44,
    numFrames = 6,
    sheetContentWidth = 181,
    sheetContentHeight = 44 }

local mySheet = graphics.newImageSheet( "walk.png", sheetData )

local sequenceData = {
    { name = "normalrun", start = 1, count = 6, time = 800 } 
  }

local animation = display.newSprite( mySheet, sequenceData )
animation.x=150
animation.y= 300
animation:play()

只制作1个动画:((

现在,我只有两种选择方式。一种是使用某种方法通过多个图像对多个动画进行动画处理(这方面您会帮助我,我真的需要您的帮助!)。二是将所有图像组合成一个:))(看起来很欺骗)。

非常感谢您的帮助,对不起,因为我的英语不好,我是越南人,我使用GG Translate。这是我开发游戏的第一步,我不想被打败。我想将所有动画集成到播放器中(例如步行,跳跃,攻击...),并在需要时调用它(使用多个图像)。请同情我,因为我问的如此愚蠢,我被禁赛6个月(这是我第一次看到自由之光)。

非常感谢。希望会有一种方法可以帮助我:))如果您向我展示示例,那就更好了。

1 个答案:

答案 0 :(得分:2)

display.newSprite()

看一下示例代码“ Multiple Image Sheets”。

您需要的一切都在Corona Api文档中:)

  

只制作1个动画:((

如果需要无限循环,请在每个动画中将<?xml version="1.0" encoding="utf-8"?> <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#f3f3f3" tools:context="example.jocelinthomas.dictionary.WordMeaningActivity"> <android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsingtoolbar" android:layout_width="match_parent" android:layout_height="match_parent" app:expandedTitleMarginBottom="60dp" app:expandedTitleMarginEnd="5dp" app:expandedTitleMarginStart="10dp" app:contentScrim="?attr/colorPrimary" app:expandedTitleTextAppearance="@style/ExpandedTitleText" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <ImageView android:layout_width="match_parent" android:layout_height="180dp" app:layout_collapseMode="parallax" app:layout_collapseParallaxMultiplier="0.7" android:scaleType="centerCrop"/> <ImageButton android:id="@+id/btnSpeak" android:layout_width="25dp" android:layout_height="25dp" android:layout_gravity="bottom|right" android:layout_margin="15dp" android:background="@drawable/speaker" app:layout_collapseMode="parallax" /> <android.support.v7.widget.Toolbar android:id="@+id/mToolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" app:layout_collapseMode="pin" android:gravity="top" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" /> </android.support.design.widget.CollapsingToolbarLayout> <android.support.design.widget.TabLayout android:id="@+id/tabLayout" style="@style/TabStyle" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:layout_gravity="bottom" android:background="@color/colorPrimary" app:tabGravity="center" app:tabMode="fixed" app:tabSelectedTextColor="@color/colorAccent" app:tabTextColor="@color/white"> </android.support.design.widget.TabLayout> </android.support.design.widget.AppBarLayout> <android.support.v4.view.ViewPager android:id="@+id/viewPager" android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"> </android.support.v4.view.ViewPager> <android.support.design.widget.FloatingActionButton android:id="@+id/fab" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="bottom|end" android:layout_margin="16dp" android:src="@android:drawable/ic_menu_share" /> </android.support.design.widget.CoordinatorLayout> 添加到sequenceData中

  

两个是将所有图像组合成一个:))(看起来很欺骗)。

如果图像不太大,您可以在一张纸上放很多东西,只需控制他的尺寸就不会有很大的纸幅