Okita | Learning C# Programming with Unity 3D | Buch | 978-1-4665-8652-9 | sack.de

Buch, Englisch, 690 Seiten, Format (B × H): 177 mm x 254 mm, Gewicht: 1171 g

Okita

Learning C# Programming with Unity 3D


1. Auflage 2014
ISBN: 978-1-4665-8652-9
Verlag: A K Peters/CRC Press

Buch, Englisch, 690 Seiten, Format (B × H): 177 mm x 254 mm, Gewicht: 1171 g

ISBN: 978-1-4665-8652-9
Verlag: A K Peters/CRC Press


Designed to give you enough familiarity in a programming language to be immediately productive, Learning C# Programming with Unity 3D provides the basics of programming and brings you quickly up to speed. Organized into easy-to-follow lessons, the book covers how C# is used to make a game in Unity3D. After reading this book, you will be armed with the knowledge required to feel confident in learning more. You’ll have what it takes to at least look at code without your head spinning.
Writing a massive multiplayer online role-playing game is quite hard, of course, but learning how to write a simple behavior isn’t. Like drawing, you start off with the basics such as spheres and cubes. After plenty of practice, you’ll be able to create a real work of art. This applies to writing code—you start off with basic calculations, then move on to the logic that drives a complex game. By the end of this book, you will have the skills to be a capable programmer, or at least know what is involved with how to read and write code.

Although you could go online and find videos and tutorials, there is a distinct advantage when it comes to learning things in order and in one place. Most online tutorials for C# are scattered, disordered, and incohesive. It’s difficult to find a good starting point, and even more difficult to find a continuous list of tutorials to bring you to any clear understanding of the C# programming language. This book not only gives you a strong foundation, but puts you on the path to game development.

Okita Learning C# Programming with Unity 3D jetzt bestellen!

Weitere Infos & Material


IntroductionWhy read a bookDo I need to know math?Programming as a form of expressionGames as a stage with lightsPersonal InformationA Brief History of Computer ProgrammingMechanical ComputersLogicComputer ScienceSoftwareModern Computer LanguageThe Future of Computer LanguagesWhat is C#?C# ParadigmWhat is Unity3D?Why Use Unity3D to Learn?How does Unity3D use C#?What Is ProgrammingWhat Does C# Look LikeLearning to copy and pasteCompilingWhat We've LearnedLeveling UpBefore You BeginWhat Will Be Covered in This ChapterGetting Started: Downloading and InstallingGetting Started: Unity3D OverviewThe Main WindowCreating a New ProjectA New Unity ProjectSummaryGetting Started: Sample CodeCode FragmentsAre errors bad?Following alongSummaryGetting Started: Working with C#Getting Project FilesCreating and Assigning a New C# FileNaming Your New FileGetting Started: Using Your New FileUnity ToolsRunning Live CodeSaving a SceneOpening a SceneSummaryWhat We’ve LearnedLeveling UpFirst StepsWhat will be covered in this chapterReviewFirst Steps: TokensTokensSeparator TokensOperator TokensOther Operator TokensLiteralsTransitive and Non-Transitive OperationsPutting It All TogetherWhat We’ve LearnedFirst Steps: Statements and ExpressionsExpressionsHow Code is ExecutedThinking in AlgorithmsWhat We’ve LearnedFirst Steps: KeywordsClassWhat we’ve learnedFirst Steps: WhitespacePick a FlavorWhat We’ve LearnedFirst Steps: Code BlocksWhat We’ve LearnedFirst Steps: ClassesObjectsWhat We’ve LearnedFirst Steps: VariablesIdentifiersData Noun: Collected Facts and Statistics Collected for AnalysisDeclaring a VariableDynamic InitializationWhat We’ve LearnedFirst Steps: Variable NamesVariable AssignmentPutting It TogetherWhat We’ve LearnedFirst Steps: Types, a first lookValue and Reference TypesWhat We’ve LearnedFirst Steps: Strong TypingDynamic TypingWhat We’ve LearnedFirst Steps: Type Casting, NumbersExplicit vs. Implicit CastingA Basic ExampleWhat We’ve LearnedFirst Steps: CommentsLine NumbersCode foldingSummary CommentsNavigating in CodeWhat We’ve learnedLeveling UpBasicsWhat Will Be Covered in This ChapterReviewBasics: Building Up a Game IdeaDesign from ExperiencePrimary ActivityMoment to MomentActions to FunctionsCompromiseStarting with ControlsWhat We’ve LearnedBasics: Creating a ClassClass DeclarationAdding Data FieldsAccess Modifiers and the Dot OperatorClass ScopeClass MembersWhat We’ve LearnedBasics: DirectivesLibrariesAmbiguous NameSpacesWhat We’ve LearnedBasics: FunctionsWhat are FunctionsUnity Entry PointsWriting a FunctionMore on White Space, TabsWhat We’ve LearnedBasics: Order of OperationWhat we've learnedBasics: Scope, a First LookClass ScopeFunction ScopeWhat We’ve LearnedBasics: ThisA Basic ExampleWhen This is NecessaryAwkward NamesWhat We’ve LearnedBasics: Turning Ideas into Code Part 1Mouse InputGameObjectWhat we’ve learnedBasics: Logic and OperatorsBooleansEquality OperatorsIf and BranchingFlow ChartsRelational OperatorsRearranging LogicAnother look at ScopeWhat we’ve learnedBasics: LoopsUnary OperatorsWhileForDo WhilePostfix and Prefix NotationUsing LoopsLoops within LoopsRunaway LoopsBreakpoints, a First LookWhat We’ve LearnedBasics: Scope, AgainVisibility or AccessibilityA Basic ExampleGlobal ScopeWhat We’ve LearnedBasics: Warnings vs ErrorsWarningsErrorsUnderstanding the debuggerWhat we’ve learnedLeveling UpStyle GuidesFundamentalsWhat Will Be Covered in This ChapterReviewFundamentals: Inheritance, A First LookClass membersInstancingParent and ChildObject! = nullWhat We’ve LearnedFundamentals: InstancingClass InitializationNewConstructorsWhat We’ve LearnedFundamentals: StaticStatic VariablesStatic FunctionsPutting it all togetherWhat we’ve learnedFundamentals: Turning Ideas into Code Part 2Input ManagerWhat We’ve LearnedFundamentals: Jump Statements:Fundamentals: Jump Statements: Return 440A Basic ExampleReturning ObjectsA Class is a TypeNull is Not VoidWhat We’ve LearnedFundamentals: Operators, conditionsConditional Operators && and What We’ve LearnedFundamentals: Arrays, a First LookFixed size ArraysForeachDynamically InitializationWhile with ArraysWhat we’ve learnedFundamentals: Jump Statements: Break and ContinueA Basic ExampleZombieDataForeach, againWhat We’ve LearnedFundamentals: Multi Dimensional ArraysColums and RowsA Basic ExampleA Puzzle BoardChecking RangeWhat We’ve LearnedFundamentals: Array ListA basic exampleArrayList ContainsRemoveSort and ReverseWhat We’ve LearnedFundamentals: StringsDeclaring a StringEscape SequencesVerbatim Strings @String FormatWhat We’ve LearnedFundamentals: Combining what we’ve learnedTimersAdding in ClassesWhat We’ve LearnedFundamentals: Source Version ControlModern Version ControlThe RepositoryGithubWhat We’ve LearnedProject FilesSetting up a RepositoryPushGitignorePullContributorsWhat we’ve learnedLeveling UpIntermediateWhat Will Be Covered in This ChapterReviewIntermediate: Pseudo CodeThinking It ThroughClass MembersFunctions ReturnArguments aka "Args" (Not related to pirates)Assignment OperatorsWhat We’ve LearnedIntermediate: Class ConstructorsA Basic ExampleWhat We LearnedWhat We’ve LearnedIntermediate: Arrays, revisitedUsing Arrays in Unity Instancing with AddComponent();Type Casting Unity ObjectsWhat We’ve LearnedIntermediate: EnumsUsing EnumsCombining what we’ve learnedWhat we’ve learnedIntermediate: SwitchA basic exampleDefault:What We’ve LearnedFall ThroughGoto CaseLimitationsWhat We’ve LearnedIntermediate: Structs a.k.a. StructuresStructs 636Struct vs. ClassWithout StructsHandling StructsAccessing StructsGlobal AccessWhat We’ve LearnedIntermediate: Class dataCharacter base class ConstReadonlyWhat We’ve LearnedIntermediate: NamespacesA Basic ExampleDirectives in NamespacesAmbiguous ReferencesAlias DirectivesPutting Namespaces to WorkExtending NamespacesWhat We’ve LearnedIntermediate: Functions againParameter ListsSide EffectsMultiple ArgumentsUseful ParametersForeach vs ForWhat We’ve LearnedIntermediate: Unity Execution orderA Basic ExampleComponent Execution OrderWhat We’ve LearnedIntermediate: Inheritance, AgainFunction OverridesA Basic ExampleClass InheritanceObjectWhat We’ve LearnedIntermediate: Type Casting, again(=Type=) versus ‘as’User-Defined Type ConversionImplicit versus Explicit Type ConversionBreak;What We’ve LearnedIntermediate: Working with VectorsVectors are ObjectsStepping through Monster GeneratorGizmosA Basic ExampleUsing GizmosOptimizingWhat We’ve LearnedIntermediate: Goto LabelsA Basic exampleZombie State MachineThis as a Reference to YourselfHumanState based on ZombieStateThe Is keywordWhat have we learnedIntermediate: More on ArraysLength and CountForeach, a ReminderDiscoveryPutting It TogetherWhat We’ve LearnedIntermediate: Out ParameterA Basic ExampleSimple Sort (Bubble Sort)Simple Sort ProofWhat We’ve LearnedIntermediate: Ref ParameterA Basic ExampleCode portability Side EffectsWhat we’ve learnedIntermediate: Type Casting NumbersNumber TypesIntegersFloating PointWhat We’ve LearnedIntermediate: Types and OperatorsGetType()More typecastingType AliasingBoxing and UnboxingIntermediate: Operator OverloadingA Basic ExampleOverloading *Overloading =What we’ve learnedIntermediate: Controlling InheritanceSealed 838A Basic ExampleAbstractA Basic ExampleAbstract: AbstractPutting this to useWhat we’ve learnedLeveling UpAdvancedWhat Will Be Covered in This ChapterReviewMoving forwardAdvanced: Mono DevelopFind in FilesWord processorsMono HistoryAdvanced: Function OverloadingA closer look at functionsFunction SignatureDifferent SignaturesPutting It TogetherNot Quite RecursionDrawwordWhat We’ve LearnedAdvanced: Accessors a.k.a. PropertiesvalueA Basic ExampleSet EventRead Only AccessorSimplification What We’ve LearnedAdvanced: Base Classes Another LookGeneralization – Base ClassesSpecializationBasePartialProtected Private and PublicWhat We’ve LearnedAdvanced: Optional parametersUsing OptionalsOptional ArgumentsNamed ParametersCombining What We’ve LearnedWhat We’ve LearnedAdvanced: Delegate FunctionsDelegatesDelegate SignaturesStacking DelegatesUsing DelegatesWhat We’ve LearnedAdvanced: InterfaceEarly PlanningInterface MethodsMultiple InterfacesIComparerUsing IComparerWhat We’ve LearnedAdvanced: Class Constructors RevisitedA Basic ExampleWhen to Create a New ClassStatic FunctionsWhat We’ve LearnedAdvanced: Preprocessor DirectivesA Basic ExampleUNITY_EDITORWarningOrganizingWhat We’ve LearnedAdvanced: ExceptionsA Basic ExampleException MessagesCustom ExceptionsFinallyTry Catch Finally in UseWhat We’ve LearnedAdvanced: IEnumeratorIEnumeratorImplementing IEnumeratorWhat We’ve LearnedAdvanced: GenericsGeneric FunctionsMaking Use of Generic FunctionsGeneric TypesVarMultiple Generic ValuesWhat We’ve LearnedAdvanced: EventsA Basic ExampleA proper eventEventArgsUpdate() to EventGeneric EventArgWhat We’ve LearnedAdvanced: Unity Friendly ClassesExtensionsA Basic ExampleInheriting from ObjectOnUpdateWhat We’ve learnedAdvanced: DestructorsA Basic exampleClearing out objectsWhat we’ve learnedAdvanced: Concurrency or Co-RoutinesYield 1088A Basic ExampleSetting Up TimersRandom Decisions with LogicStopping a CoroutineWhat We’ve LearnedAdvanced: Dictionary Stacks and QueuesA Basic ExampleContainsKeyStacksA Basic ExampleQueuesWhat We’ve LearnedAdvanced: CallbacksA Basic ExampleDynamic Callback AssignmentWWWWhat We’ve LearnedAdvanced: Lambda ExpressionsAnonymous ExpressionsA Lambda ExpressionsA Basic ExampleWhen lambdas are UsefulLambda StatementsWhat We’ve LearnedLeveling upExtendedExtended: What we’ll be covering in this chapterExtended: ReviewExtended: Readability Optimizations and Idioms?:ifSmellWhat We’ve LearnedExtended: Source Control RevisitedDiff and MergeKDiff3Avoiding ConflictsWhat We’ve LearnedExtended: DebuggingDebugging AccessorsLocalsCall StackWatching ListWhat We’ve LearnedExtended: RecursionA Basic ExampleUnderstanding RecursionIn practiceRecursion TypesWhat We’ve LearnedExtended: ReflectionA Basic ExampleReflection MethodInfoWhat We’ve LearnedExtended: LINQLambdas and Arrays 1205varLINQ fromStrange behaviors in LINQGreedy OperatorWhat we’ve learnedExtended: Bitwise OperatorsBig endian and Little EndianSigned or UnsignedBitwise or Enums and NumbersBitwise and &Bitwise Exclusive or ^ (xor)Setting Bitwise FlagsBitwise Shortcuts = and ^ =Bits in NumbersBit Shifting == and ==What We’ve LearnedExtended: Bitwise MathTwos ComplementUnary Operator ~Bitwise Addition and SubtractionBitwise MultiplicationBitwise TricksWhat We’ve LearnedExtended: AttributesA Basic ExampleCustom AttributesFinding Custom AttributesAttribute ConstructorMultiple AttributesPutting Attributes to WorkAttribute flagsWhat We’ve LearnedExtended: Architectures and OrganizationPlanning StructureFixing NamespacesNamespace and Directory StructureUsing PartialRefactoringWhat We’ve LearnedExtended: Design PatternsCreational Design PatternsStructural Design PatternsBehavioral Design PatternsWhat We’ve LearnedExtended: Continuing on Your OwnStuff We Couldn’t CoverExtern and unsafeDynamicDynamic vs Var



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.