Skip Navigation
Angelo State University
Department of Computer Science

Search Site

Information for:

Computer Science gaming graphic

Computer Science Courses (CS)

See Course & Instructor Information for current offerings and syllabus listings.

  • 1301/COSC 1301 Computer Literacy (3-0). Overview of concepts, terminologies, hardware and software used in computing and networking.

    1315/COSC 1315 Fundamentals of Programming (3-0). Introductory computer programming techniques using a modern, object-oriented programming language.

    1336/COSC 1336 Computer Science I (3-0). The concepts and properties of algorithms for solving numerical and non-numerical problems. Introduction to computer and programming systems, including the development, debugging, and verification of programs, representation of data, computer characteristics and organization.

    1337/COSC 1337 Computer Science II (3-0). Continuation of Computer Science 1336. Problem solving and program development techniques emphasizing modular design. Includes advanced programming topics such as class design, records, strings, pointers, and bit manipulation.
    Prerequisite: Computer Science 1336.

    1351 Java Programming (3-0). Programming concepts and development in the Java language.

    1371 Introduction to Computer Game Development (3-0). An introduction to computer game development. Topics include the history of game development, player motivation, game elements, storytelling, characters, game play, level design, interface design, audio, project management, production, marketing and maintenance.

    2315/COSC 2315 Data Structures and Algorithms (3-0). Study of basic data structures and their applications such as: linear structures (arrays, lists, stacks, queues) and non-linear structures (trees, graphs); sequential and linked storage representation methods; sorting and searching algorithms; and techniques of algorithmic analysis.
    Prerequisite: Computer Science 1337.

    2324 3D Modeling and Animation I (3-0). Introduction to three-dimensional (3D) modeling and animation utilizing industry standard software. The course includes the modeling and modification of 3D geometric shapes, as well as introduction to camera techniques, light sources, textures, rigging, weight-mapping models and rendering for animation.

    2325 3D Modeling and Animation II (3-0). Intermediate methods for three-dimensional (3D) modeling and animation, including spline drawing, dynamic object emitters, surface mapping, skelegons, inverse kinematics, and extended lighting, texturing, and camera techniques.
    Prerequisite: Computer Science 2324.

    3304 Computer Organization and Programming (3-0). Basic computer organization with emphasis on machine representation of data and instructions; programming in assembly and machine-oriented languages for real and simulated computers.
    Prerequisite: Computer Science 1337.

    3310 Principles of Unix (3-0). This course will introduce the students to UNIX and systems programming. Students will use a Linux environment to learn user and administrative commands, create scripts using shell scripting languages, and program using C language, implementing UNIX concepts such as processes, inter-process communication and sockets.
    Prerequisite: Computer Science 1337.

    3311 Data Base Management (3-0). Basic data base concepts, organization, and definitions; data description languages; relational data base concepts and examples; comparison of data base systems.
    Prerequisite: Computer Science 1337.

    3312 Web Programming (3-0). Techniques for creating dynamic and responsive web pages using the latest markup, styling and client-side scripting technologies. Best practices for code maintainability and for browser and mobile compatibility will be emphasized.
    Prerequisite: Computer Science 1351 or 1336 or instructor’s permission.

    3331 Programming Languages (3-0). An introduction to the syntax and semantics of programming languages. Actual programming languages may be used to illustrate the language concepts.
    Prerequisite: Computer Science 2315.

    3344 Computer Architecture (3-0). Study of the hardware components of a computer system and survey of various computer architectures. Topics may include instruction set design, computer arithmetic, and microprogramming.
    Prerequisite: Computer Science 3304.

    3352 Theory of Algorithms (3-0). An in-depth study of computer algorithms, including those for hash tables, trees and graphs; analysis of time and space requirements of algorithms; NP-completeness and undecidability of problems.
    Prerequisite: Computer Science 2315.
    Prerequisite or Corequisite: Mathematics 2305

    3371 Computer Game Development I (3-0). Introduction to the design and implementation of computer games, including realtime graphics, audio and interactive multimedia programming techniques.
    Prerequisite: Computer Science 2315.

    3372 Handheld Game Development (3-0). Computer game development for one or more handheld computing devices. Programming topics include graphics, audio, user interfaces and development tools. Other topics may include content creation, developer workflow, hardware acceleration, and power management.
    Prerequisite: Computer Science 2315.

    4091 Research: 1 to 6. A specialized course providing research opportunities for superior students majoring in computer science.
    Prerequisites: Senior standing and consent of the department chair is required.

    4171 Internship. The student will participate in a part-time computing position with a cooperating business or government agency whose program has been approved by the Computer Science Department. The internship requires a minimum of ten hours per week. The course may be repeated once for credit. Grading will be either pass or fail.
    Prerequisites: Junior or senior Computer Science major with at least 18 semester hours in Computer Science, 12 of which must be in residence. Additionally, consent of the department chair is required.

    4301 Algorithmic Languages and Compilers (3-0). Formal description of algorithmic languages, compilation techniques, syntactic analysis, code generation, storage allocation, syntax-directed compilers, compiler-building systems.
    Prerequisites: Computer Science 2315, 3304.

    4302 Operating Systems (3-0). A study of the design and implementation of operating systems; analysis of system resource management, including the memory, processor, device, and information management functions.
    Prerequisites: Computer Science 2315, 3304.

    4306 Software Engineering (3-0). Introduction to the fundamental concepts of computer software development; programming methodology; software reliability; performance and design evaluations, software project management; program development languages, tools and standards.
    Prerequisites: Senior standing and Computer Science 2315.

    4307 Ethical Issues in Computing (3-0). Seminar style with discussion of the concern for the way in which computers pose new ethical questions or pose new versions of standard moral problems and dilemmas; study of ethical concepts to guide the computer professional; and computer professional codes of ethics. Case studies will be used to relate to ethical theory. Discussion will include ethical and legal use of software and conflicts of interest.
    Prerequisite: Junior standing.

    4308 Computer Graphics (3-0). Study of hardware and software found in graphics systems. Topics such as line and curve drawing, text generation, transformation methods for two and three dimensional systems, fill algorithms, fractal curves and hiddenline algorithms.
    Prerequisites: Computer Science 2315 and Mathematics 2312.

    4311 Web Database Design (3-0). Basics of web databases; understanding of web database design concepts; development of working web database using software and software tools readily available on the Internet.
    Prerequisites: Computer Science 2315, 3311.

    4312 Internet Technologies (3-0). Technologies that make up the Internet including servers, clients, protocols, browsers and mechanisms for executable content.
    Prerequisite: Computer Science 2315.

    4314 Computer Networking (3-0). Introduction to the principles and basic concepts of computer networking, including the Internet. Networking concepts, protocols and technologies are broken down into layers.
    Prerequisite: Computer Science 2315.

    4316 Visual Programming (3-0). Programming in and for a visual or GUI environment. Event-driven objects including mouse and window events.
    Prerequisite: Computer Science 1315.

    4318 Artificial Intelligence (3-0). Fundamental concepts and techniques of intelligent systems; representation and interpretation of knowledge on a computer; search strategies and control.
    Prerequisites: Senior standing and Computer Science 2315.

    4320 Computer and Network Security (3-0). In-depth look at the security risks and threats to an organization’s electronic assets, and an overview of components used in an enterprise security infrastructure. Topics will include theoretical background as well as practical techniques to secure an enterprise network.

    4371 Computer Game Development II (3-0). Continuation of Computer Science 3371. Advanced game programming techniques, including designing game mechanics, concepts of emergence and progression, and the use of visual design tools.
    Prerequisite: Computer Science 3371.

    4381 Special Topics in Computer Science (3-0). Contemporary applications and theory in computer science. (May be repeated once for credit when the topics vary.)
    Prerequisite: Computer Science 2315.

Game Development Sequence

Students electing an emphasis in game development take the following courses:

  • 1371 Introduction to Computer Game Development
  • 3371 Computer Game Development I
  • 3372 Handheld Game Development
  • 4318 Artificial Intelligence
  • 4371 Computer Game Development II

Earlier Course Descriptions

For a list of course descriptions prior to fall 2008, contact the computer science program.