1#!/usr/bin/env omake 2#---------------------------------------------------------------------------- 3# Project: NintendoWare 4# File: OMakefile 5# 6# Copyright (C)2009-2011 Nintendo/HAL Laboratory, Inc. All rights reserved. 7# 8# These coded instructions, statements, and computer programs contain proprietary 9# information of Nintendo and/or its licensed developers and are protected by 10# national and international copyright laws. They may not be disclosed to third 11# parties or copied or duplicated in any form, in whole or in part, without the 12# prior written consent of Nintendo. 13# 14# The content herein is highly confidential and should be handled accordingly. 15# 16# $Revision: $ 17#---------------------------------------------------------------------------- 18 19# Gfx�̃R���o�[�^�A�A�[�J�C�o 20BINARY_CONVERTER = $(NW4C_ROOT)/tools/CreativeStudio/NW4C_CreativeStudioConsole.exe 21 22public.GfxBinaryObject(ofile, files, option) = 23 $(ofile): $(files) $(BINARY_CONVERTER) 24 mkdir -p $(dirname $@) 25 $(BINARY_CONVERTER) $(filter-out %.exe, $^) --verbose -o=$@ $(option) 26 return $(ofile) 27 28# ���C�A�E�g�̃R���o�[�^�A�A�[�J�C�o 29NW4C_LAYOUT_CONVERTER = $(NW4C_ROOT)/tools/LayoutEditor/Converter/NW4C_LayoutConverter.exe 30NW4C_LAYOUT_ARCHIVER = $(NW4C_ROOT)/tools/LayoutEditor/Converter/NW4C_LayoutArchiver.exe 31 32public.LayoutBinaryConvert(outfile, outdir, sources) = 33 $(outfile): $(sources) 34 rm -rf $(outdir) 35 mkdir -p $(outdir) 36 $(NW4C_LAYOUT_CONVERTER) -g $(sources) $(outdir) 37 $(NW4C_LAYOUT_ARCHIVER) -c $(outfile) -a 128 -f $(outdir) ./blyt ./anim ./timg 38 return $(outfile) 39 40public.LayoutBinaryConvertNonAnim(outfile, outdir, sources) = 41 $(outfile): $(sources) 42 rm -rf $(outdir) 43 mkdir -p $(outdir) 44 $(NW4C_LAYOUT_CONVERTER) -g $(sources) $(outdir) 45 $(NW4C_LAYOUT_ARCHIVER) -c $(outfile) -a 128 -f $(outdir) ./blyt ./timg 46 return $(outfile) 47 48 49# �v���Z�X���T�|�[�g����^�[�Q�b�g���L�q���܂��B 50# �V�X�e�����͕K�� Process �ɂȂ�͂��ł��B 51SUPPORTED_TARGETS = CTR-*.Process.MPCore.* 52ROMFS_ROOT = romfiles 53TARGET_PROGRAM = Nw4cDemo 54 55 56# Gfx���\�[�X�̃R���o�[�g���s���܂��B 57 58# �o�C�i���R���o�[�g�̃I�v�V�������w�肵�܂��B 59MODEL_OPTION = --auto_create_shader=on 60 61# �s�G�� 62PIERROT_SET_NAME = ToyPierrot.bcmdl 63PIERROT_SET[] = 64 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyPierrot\ToyPierrot.cmdl 65 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyPierrot\ToyPierrotAnimDance.cskla 66 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyPierrot\ToyPierrotAnimDance.cmata 67 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyPierrot\ToyPierrotAll.ctex 68 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyPierrot\ToyPierrotAllNmap.ctex 69 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyPierrot\ToyPierrotEye.0.ctex 70 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyPierrot\ToyPierrotEye.1.ctex 71 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyPierrot\ToyPierrotEye.2.ctex 72 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyPierrot\ToyPierrotStickRed.ctex 73 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyCommon\ToyRoomCube.ctex 74 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyCommon\ToyAllLut.clts 75 76PIERROT_TARGET = $(GfxBinaryObject $(ROMFS_ROOT)/$(PIERROT_SET_NAME), $(PIERROT_SET), $(MODEL_OPTION)) 77 78# �o�b�N�_���T�[�s�G�� 79BACK_DANCER_PIERROT_SET_NAME = ToyPierrotBackDancer.bcmdl 80BACK_DANCER_PIERROT_SET[] = 81 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyPierrot\ToyPierrotBackDancer.cmdl 82 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyPierrot\ToyPierrotBackDancerAnimDance.cskla 83 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyPierrot\ToyPierrotAnimDance.cmata 84 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyPierrot\ToyPierrotAllNmap.ctex 85 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyPierrot\ToyPierrotBackDancerAll.ctex 86 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyPierrot\ToyPierrotEye.0.ctex 87 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyPierrot\ToyPierrotEye.1.ctex 88 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyPierrot\ToyPierrotEye.2.ctex 89 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyPierrot\ToyPierrotStickRed.ctex 90 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyCommon\ToyRoomCube.ctex 91 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyCommon\ToyAllLut.clts 92 93BACK_DANCER_PIERROT_TARGET = $(GfxBinaryObject $(ROMFS_ROOT)/$(BACK_DANCER_PIERROT_SET_NAME), $(BACK_DANCER_PIERROT_SET), $(MODEL_OPTION)) 94 95# ���{�b�g 96ROBOT_SET_NAME = ToyRobot.bcmdl 97ROBOT_SET[] = 98 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyRobot\ToyRobot.cmdl 99 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyRobot\ToyRobotAnimDance.cskla 100 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyRobot\ToyRobot.cmata 101 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyRobot\ToyRobotAll.ctex 102 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyRobot\ToyRobotGear.ctex 103 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyCommon\ToyRoomCube.ctex 104 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyCommon\ToyAllLut.clts 105 106ROBOT_TARGET = $(GfxBinaryObject $(ROMFS_ROOT)/$(ROBOT_SET_NAME), $(ROBOT_SET), $(MODEL_OPTION)) 107 108# �o�b�N�_���T�[���{�b�g 109BACK_DANCER_ROBOT_SET_NAME = ToyRobotBackDancer.bcmdl 110BACK_DANCER_ROBOT_SET[] = 111 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyRobot\ToyRobotBackDancer.cmdl 112 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyRobot\ToyRobotBackDancerAnimDance.cskla 113 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyRobot\ToyRobot.cmata 114 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyRobot\ToyRobotBackDancerAll.ctex 115 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyRobot\ToyRobotGear.ctex 116 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyCommon\ToyRoomCube.ctex 117 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyCommon\ToyAllLut.clts 118 119BACK_DANCER_ROBOT_TARGET = $(GfxBinaryObject $(ROMFS_ROOT)/$(BACK_DANCER_ROBOT_SET_NAME), $(BACK_DANCER_ROBOT_SET), $(MODEL_OPTION)) 120 121# �X�e�[�W 122STAGE_SET_NAME = ToyStageMatFix.bcmdl 123STAGE_SET[] = 124 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyStageMatFix.cmdl 125 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyStageMatFix.cskla 126 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyStageMatFix.cmata 127 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyStageCarpet.ctex 128 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyStageConfetti.ctex 129 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyStageCurtain.ctex 130 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyStageParts01.ctex 131 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyStageParts02.ctex 132 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyStageParts03.ctex 133 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyStageRibbon.ctex 134 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyStageWood01.ctex 135 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyStageWood02.ctex 136 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyTentBlock.ctex 137 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyTentSpiralA.ctex 138 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyTentWall.ctex 139 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyTentWave.ctex 140 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyTentWood.ctex 141 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyTentSpiralA.ctex 142 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyCommon\ToyRoomCube.ctex 143 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyCommon\ToyAllLut.clts 144 145STAGE_TARGET = $(GfxBinaryObject $(ROMFS_ROOT)/$(STAGE_SET_NAME), $(STAGE_SET), $(MODEL_OPTION)) 146 147# �X�e�[�W�I�u�W�F�N�g 148STAGE_OBJECT_SET_NAME = ToyStageObj.bcmdl 149STAGE_OBJECT_SET[] = 150 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyStageObj.cmdl 151 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyStageObj.cskla 152 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyStageBilliard.ctex 153 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyStageScreen.ctex 154 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyStageRocketMoon.ctex 155 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyStage\ToyStageRocketMoonNmap.ctex 156 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyCommon\ToyRoomCube.ctex 157 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyCommon\ToyAllLut.clts 158 159STAGE_OBJECT_TARGET = $(GfxBinaryObject $(ROMFS_ROOT)/$(STAGE_OBJECT_SET_NAME), $(STAGE_OBJECT_SET), $(MODEL_OPTION)) 160 161# �ϋq 162AUDIENCE_SET_NAME = ToyAudience.bcmdl 163AUDIENCE_SET[] = 164 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyAudience\ToyAudience.cmdl 165 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyAudience\ToyAudience.cskla 166 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyAudience\ToyAudienceAll.ctex 167 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyAudience\ToyAudienceMask.ctex 168 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyCommon\ToyAllLut.clts 169 170AUDIENCE_TARGET = $(GfxBinaryObject $(ROMFS_ROOT)/$(AUDIENCE_SET_NAME), $(AUDIENCE_SET), $(MODEL_OPTION)) 171 172# �V�� 173TOYBG_SET_NAME = ToyBg.bcmdl 174TOYBG_SET[] = 175 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyCommon\ToyBg.cmdl 176 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyCommon\ToyAllLut.clts 177 178TOYBG_TARGET = $(GfxBinaryObject $(ROMFS_ROOT)/$(TOYBG_SET_NAME), $(TOYBG_SET), $(MODEL_OPTION)) 179 180# �p�[�e�B�N�� 181PARTICLE_SET_NAME = ToyParticle.bcres 182PARTICLE_SET[] = 183 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyParticle\ToyParticle.cres 184 185PARTICLE_TARGET = $(GfxBinaryObject $(ROMFS_ROOT)/$(PARTICLE_SET_NAME), $(PARTICLE_SET), $(MODEL_OPTION)) 186 187 188# ���C�g 189LIGHT_SET_NAME = ToyMrnRbtLight.bcenv 190LIGHT_SET[] = 191 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyCommon\ToyMrnRbtLight.cenv 192 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyCommon\ToyAllLut.clts 193 194LIGHT_TARGET = $(GfxBinaryObject $(ROMFS_ROOT)/$(LIGHT_SET_NAME), $(LIGHT_SET), $(MODEL_OPTION)) 195 196# �J���� 197CAMERA_SET_NAME = ToyCamAni.bccam 198CAMERA_SET[] = 199 $(NW4C_ROOT)/SampleData\Nw4cDemo\ToyCamera\ToyCamAni.ccam 200 201CAMERA_TARGET = $(GfxBinaryObject $(ROMFS_ROOT)/$(CAMERA_SET_NAME), $(CAMERA_SET), $(MODEL_OPTION)) 202 203 204# ���C�A�E�g���\�[�X�̃R���o�[�g�A�A�[�J�C�u�����s���܂��B 205 206# ���C�� 207LYT_MAIN_ARV = ./romfiles/LayoutMain.arc 208LYT_MAIN_OUT = ./resource/LayoutMain 209LYT_MAIN_SET[] = 210 $(NW4C_ROOT)/SampleData\Nw4cDemo\LayoutDB\LayoutMain\Main.clyt 211 $(NW4C_ROOT)/SampleData\Nw4cDemo\LayoutDB\LayoutMain\Main.clan 212LYT_MAIN_TARGET = $(LayoutBinaryConvert $(LYT_MAIN_ARV), $(LYT_MAIN_OUT), $(LYT_MAIN_SET)) 213 214# �X���C�_�[ 215LYT_SLIDER_ARV = ./romfiles/LayoutSlider.arc 216LYT_SLIDER_OUT = ./resource/LayoutSlider 217LYT_SLIDER_SET[] = 218 $(NW4C_ROOT)/SampleData\Nw4cDemo\LayoutDB\LayoutSlider\Slider.clyt 219LYT_SLIDER_TARGET = $(LayoutBinaryConvertNonAnim $(LYT_SLIDER_ARV), $(LYT_SLIDER_OUT), $(LYT_SLIDER_SET)) 220 221# �s�G���{�^�� 222LYT_PIERROT_ARV = ./romfiles/LayoutPierrotButton.arc 223LYT_PIERROT_OUT = ./resource/LayoutPierrotButton 224LYT_PIERROT_SET[] = 225 $(NW4C_ROOT)/SampleData\Nw4cDemo\LayoutDB\LayoutPierrotButton/Button.clyt 226 $(NW4C_ROOT)/SampleData\Nw4cDemo\LayoutDB\LayoutPierrotButton/Button.clan 227LYT_PIERROT_TARGET = $(LayoutBinaryConvert $(LYT_PIERROT_ARV), $(LYT_PIERROT_OUT), $(LYT_PIERROT_SET)) 228 229# ���{�b�g�{�^�� 230LYT_ROBOT_ARV = ./romfiles/LayoutRobotButton.arc 231LYT_ROBOT_OUT = ./resource/LayoutRobotButton 232LYT_ROBOT_SET[] = 233 $(NW4C_ROOT)/SampleData\Nw4cDemo\LayoutDB\LayoutRobotButton/Button.clyt 234 $(NW4C_ROOT)/SampleData\Nw4cDemo\LayoutDB\LayoutRobotButton/Button.clan 235LYT_ROBOT_TARGET = $(LayoutBinaryConvert $(LYT_ROBOT_ARV), $(LYT_ROBOT_OUT), $(LYT_ROBOT_SET)) 236 237# �X�e�[�W�{�^�� 238LYT_STAGE_ARV = ./romfiles/LayoutStageButton.arc 239LYT_STAGE_OUT = ./resource/LayoutStageButton 240LYT_STAGE_SET[] = 241 $(NW4C_ROOT)/SampleData\Nw4cDemo\LayoutDB\LayoutStageButton/Button.clyt 242 $(NW4C_ROOT)/SampleData\Nw4cDemo\LayoutDB\LayoutStageButton/Button.clan 243LYT_STAGE_TARGET = $(LayoutBinaryConvert $(LYT_STAGE_ARV), $(LYT_STAGE_OUT), $(LYT_STAGE_SET)) 244 245# �ϋq�{�^�� 246LYT_AUDIENCE_ARV = ./romfiles/LayoutAudienceButton.arc 247LYT_AUDIENCE_OUT = ./resource/LayoutAudienceButton 248LYT_AUDIENCE_SET[] = 249 $(NW4C_ROOT)/SampleData\Nw4cDemo\LayoutDB\LayoutAudienceButton/Button.clyt 250 $(NW4C_ROOT)/SampleData\Nw4cDemo\LayoutDB\LayoutAudienceButton/Button.clan 251LYT_AUDIENCE_TARGET = $(LayoutBinaryConvert $(LYT_AUDIENCE_ARV), $(LYT_AUDIENCE_OUT), $(LYT_AUDIENCE_SET)) 252 253# �p�[�e�B�N���{�^�� 254LYT_PARTICLE_ARV = ./romfiles/LayoutParticleButton.arc 255LYT_PARTICLE_OUT = ./resource/LayoutParticleButton 256LYT_PARTICLE_SET[] = 257 $(NW4C_ROOT)/SampleData\Nw4cDemo\LayoutDB\LayoutParticleButton/Button.clyt 258 $(NW4C_ROOT)/SampleData\Nw4cDemo\LayoutDB\LayoutParticleButton/Button.clan 259LYT_PARTICLE_TARGET = $(LayoutBinaryConvert $(LYT_PARTICLE_ARV), $(LYT_PARTICLE_OUT), $(LYT_PARTICLE_SET)) 260 261 262ROMFS_DEPENDENCIES = $(PIERROT_TARGET) $(BACK_DANCER_PIERROT_TARGET) $(ROBOT_TARGET) $(BACK_DANCER_ROBOT_TARGET) $(STAGE_TARGET) $(STAGE_OBJECT_TARGET) $(AUDIENCE_TARGET) $(TOYBG_TARGET) $(PARTICLE_TARGET) $(LIGHT_TARGET) $(CAMERA_TARGET) $(LYT_MAIN_TARGET) $(LYT_SLIDER_TARGET) $(LYT_PIERROT_TARGET) $(LYT_ROBOT_TARGET) $(LYT_STAGE_TARGET) $(LYT_AUDIENCE_TARGET) $(LYT_PARTICLE_TARGET) 263 264# �r���h����\�[�X�t�@�C�� 265SOURCES[] = 266 sources/main.cpp 267 sources/demo.cpp 268 sources/GfxCtrl.cpp 269 sources/LytCtrl.cpp 270 sources/SmPerf.cpp 271 sources/SmModel.cpp 272 sources/SmPrimitive.cpp 273 sources/SmButton.cpp 274 sources/SmTouchPanelCamera.cpp 275 sources/SmCamera.cpp 276 sources/SmLayout.cpp 277 sources/SmLytButton.cpp 278 sources/SmRenderSystem.cpp 279 sources/SmSceneCtrl.cpp 280 sources/SmCommandUtility.cpp 281 sources/SmBase.cpp 282 sources/SmLytSliderBar.cpp 283 sources/SmInitialFileParser.cpp 284 sources/SmParticle.cpp 285 286SHADER_SOURCES[] = 287 sources/shader/nw4cDemo.vsh 288 289# �lj����郉�C�u���� 290NW_LIBRARIES += libnw_demo 291CCFLAGS += -DNN_SWITCH_ENABLE_HOST_IO 292LIBS += libnn_math libnn_ulcd libnn_gr 293include $(NW4C_ROOT)/build/omake/modulerules 294 295build: $(DEFAULT_TARGETS) 296