├── .DS_Store ├── .gitignore ├── 01.HelloOpenGL ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── misc.xml │ ├── modules.xml │ └── runConfigurations.xml ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── helloopengl │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── helloopengl │ │ │ │ ├── MainActivity.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ └── OGLView.java │ │ └── res │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── helloopengl │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.png └── settings.gradle ├── 01.RedAlert ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── misc.xml │ ├── modules.xml │ └── runConfigurations.xml ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── redalert │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── redalert │ │ │ │ ├── MainActivity.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ └── OGLView.java │ │ └── res │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── redalert │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.gif └── settings.gradle ├── 02.Square ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── misc.xml │ ├── modules.xml │ └── runConfigurations.xml ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── square │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── square │ │ │ │ ├── MainActivity.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ ├── OGLView.java │ │ │ │ ├── Square.java │ │ │ │ └── glkit │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── ShaderProgram.java │ │ │ │ └── ShaderUtils.java │ │ └── res │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ ├── simple_fragment_shader.glsl │ │ │ └── simple_vertex_shader.glsl │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── square │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.png └── settings.gradle ├── 02.Star ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── misc.xml │ ├── modules.xml │ └── runConfigurations.xml ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── star │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── star │ │ │ │ ├── MainActivity.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ ├── OGLView.java │ │ │ │ └── glkit │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── ShaderProgram.java │ │ │ │ └── ShaderUtils.java │ │ └── res │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ ├── simple_fragment_shader.glsl │ │ │ └── simple_vertex_shader.glsl │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── star │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.png └── settings.gradle ├── 02.Triangle ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── misc.xml │ ├── modules.xml │ └── runConfigurations.xml ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── triangle │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── triangle │ │ │ │ ├── MainActivity.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ ├── OGLView.java │ │ │ │ ├── Triangle.java │ │ │ │ └── glkit │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── ShaderProgram.java │ │ │ │ └── ShaderUtils.java │ │ └── res │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ ├── simple_fragment_shader.glsl │ │ │ └── simple_vertex_shader.glsl │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── triangle │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.png └── settings.gradle ├── 03.ColoredIndexSquare ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── misc.xml │ ├── modules.xml │ └── runConfigurations.xml ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── coloredindexsquare │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── coloredindexsquare │ │ │ │ ├── MainActivity.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ ├── OGLView.java │ │ │ │ ├── Square.java │ │ │ │ └── glkit │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── ShaderProgram.java │ │ │ │ └── ShaderUtils.java │ │ └── res │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ ├── simple_fragment_shader.glsl │ │ │ └── simple_vertex_shader.glsl │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── coloredindexsquare │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.png └── settings.gradle ├── 03.ColoredSquare ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── misc.xml │ ├── modules.xml │ └── runConfigurations.xml ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── coloredsquare │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── coloredsquare │ │ │ │ ├── MainActivity.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ ├── OGLView.java │ │ │ │ ├── Square.java │ │ │ │ └── glkit │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── ShaderProgram.java │ │ │ │ └── ShaderUtils.java │ │ └── res │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ ├── simple_fragment_shader.glsl │ │ │ └── simple_vertex_shader.glsl │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── coloredsquare │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.png └── settings.gradle ├── 04.VertexArrayObject ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── misc.xml │ ├── modules.xml │ └── runConfigurations.xml ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── vertexarrayobject │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── vertexarrayobject │ │ │ │ ├── MainActivity.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ ├── OGLView.java │ │ │ │ ├── Square.java │ │ │ │ └── glkit │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── ShaderProgram.java │ │ │ │ └── ShaderUtils.java │ │ └── res │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ ├── simple_fragment_shader.glsl │ │ │ └── simple_vertex_shader.glsl │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── vertexarrayobject │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.png └── settings.gradle ├── 05.Model ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── misc.xml │ ├── modules.xml │ └── runConfigurations.xml ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── model │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── model │ │ │ │ ├── MainActivity.java │ │ │ │ ├── Model.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ ├── OGLView.java │ │ │ │ ├── Square.java │ │ │ │ └── glkit │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── ShaderProgram.java │ │ │ │ └── ShaderUtils.java │ │ └── res │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ ├── simple_fragment_shader.glsl │ │ │ └── simple_vertex_shader.glsl │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── model │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.png └── settings.gradle ├── 06-1.ModelTransformation ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── misc.xml │ ├── modules.xml │ └── runConfigurations.xml ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── modeltransformation │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── modeltransformation │ │ │ │ ├── MainActivity.java │ │ │ │ ├── Model.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ ├── OGLView.java │ │ │ │ ├── Square.java │ │ │ │ └── glkit │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── ShaderProgram.java │ │ │ │ └── ShaderUtils.java │ │ └── res │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ ├── simple_fragment_shader.glsl │ │ │ └── simple_vertex_shader.glsl │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── modeltransformation │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.png └── settings.gradle ├── 06-2.ModelTransformation-Animation ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── misc.xml │ ├── modules.xml │ └── runConfigurations.xml ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── modeltransformation_animation │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── modeltransformation_animation │ │ │ │ ├── MainActivity.java │ │ │ │ ├── Model.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ ├── OGLView.java │ │ │ │ ├── Square.java │ │ │ │ └── glkit │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── ShaderProgram.java │ │ │ │ └── ShaderUtils.java │ │ └── res │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ ├── simple_fragment_shader.glsl │ │ │ └── simple_vertex_shader.glsl │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── modeltransformation_animation │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.gif └── settings.gradle ├── 06-3.ViewTransformation ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── libraries │ │ ├── animated_vector_drawable_23_4_0.xml │ │ ├── appcompat_v7_23_4_0.xml │ │ ├── hamcrest_core_1_3.xml │ │ ├── junit_4_12.xml │ │ ├── support_annotations_23_4_0.xml │ │ ├── support_v4_23_4_0.xml │ │ └── support_vector_drawable_23_4_0.xml │ ├── misc.xml │ ├── modules.xml │ ├── runConfigurations.xml │ └── workspace.xml ├── 06-3.ViewTransformation.iml ├── app │ ├── .gitignore │ ├── app.iml │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── viewtransformation │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── viewtransformation │ │ │ │ ├── MainActivity.java │ │ │ │ ├── Model.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ ├── OGLView.java │ │ │ │ ├── Square.java │ │ │ │ └── glkit │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── ShaderProgram.java │ │ │ │ └── ShaderUtils.java │ │ └── res │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ ├── simple_fragment_shader.glsl │ │ │ └── simple_vertex_shader.glsl │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── viewtransformation │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.gif └── settings.gradle ├── 06-4.ProjectionTransformation ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── libraries │ │ ├── animated_vector_drawable_23_4_0.xml │ │ ├── appcompat_v7_23_4_0.xml │ │ ├── hamcrest_core_1_3.xml │ │ ├── junit_4_12.xml │ │ ├── support_annotations_23_4_0.xml │ │ ├── support_v4_23_4_0.xml │ │ └── support_vector_drawable_23_4_0.xml │ ├── misc.xml │ ├── modules.xml │ ├── runConfigurations.xml │ └── workspace.xml ├── 06-4.ProjectionTransformation.iml ├── app │ ├── .gitignore │ ├── app.iml │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── projectiontransformation │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── projectiontransformation │ │ │ │ ├── MainActivity.java │ │ │ │ ├── Model.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ ├── OGLView.java │ │ │ │ ├── Square.java │ │ │ │ └── glkit │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── ShaderProgram.java │ │ │ │ └── ShaderUtils.java │ │ └── res │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ ├── simple_fragment_shader.glsl │ │ │ └── simple_vertex_shader.glsl │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── projectiontransformation │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.gif └── settings.gradle ├── 06-5.AnimateCube ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── misc.xml │ ├── modules.xml │ └── runConfigurations.xml ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── animatecube │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── animatecube │ │ │ │ ├── Cube.java │ │ │ │ ├── MainActivity.java │ │ │ │ ├── Model.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ ├── OGLView.java │ │ │ │ ├── Square.java │ │ │ │ └── glkit │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── ShaderProgram.java │ │ │ │ └── ShaderUtils.java │ │ └── res │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ ├── simple_fragment_shader.glsl │ │ │ └── simple_vertex_shader.glsl │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── animatecube │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.gif └── settings.gradle ├── 06-6.DepthAndCulling ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── misc.xml │ ├── modules.xml │ └── runConfigurations.xml ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── depthandculling │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── depthandculling │ │ │ │ ├── Cube.java │ │ │ │ ├── MainActivity.java │ │ │ │ ├── Model.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ ├── OGLView.java │ │ │ │ ├── Square.java │ │ │ │ └── glkit │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── ShaderProgram.java │ │ │ │ └── ShaderUtils.java │ │ └── res │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ ├── simple_fragment_shader.glsl │ │ │ └── simple_vertex_shader.glsl │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── depthandculling │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.gif └── settings.gradle ├── 07-1.Texture ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── misc.xml │ ├── modules.xml │ └── runConfigurations.xml ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── texture │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── texture │ │ │ │ ├── Cube.java │ │ │ │ ├── MainActivity.java │ │ │ │ ├── Model.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ ├── OGLView.java │ │ │ │ ├── Square.java │ │ │ │ └── glkit │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── ShaderProgram.java │ │ │ │ ├── ShaderUtils.java │ │ │ │ └── TextureUtils.java │ │ └── res │ │ │ ├── drawable │ │ │ ├── dungeon_01.png │ │ │ └── razewarelogo_128.png │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ ├── simple_fragment_shader.glsl │ │ │ └── simple_vertex_shader.glsl │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── texture │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.gif └── settings.gradle ├── 07-2.Dice ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── misc.xml │ ├── modules.xml │ └── runConfigurations.xml ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── dice │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── dice │ │ │ │ ├── Cube.java │ │ │ │ ├── MainActivity.java │ │ │ │ ├── Model.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ ├── OGLView.java │ │ │ │ └── glkit │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── ShaderProgram.java │ │ │ │ ├── ShaderUtils.java │ │ │ │ └── TextureUtils.java │ │ └── res │ │ │ ├── drawable-nodpi │ │ │ ├── dice.png │ │ │ └── razewarelogo_128.png │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ ├── simple_fragment_shader.glsl │ │ │ └── simple_vertex_shader.glsl │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── dice │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.gif └── settings.gradle ├── 07-3.Masking ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── misc.xml │ ├── modules.xml │ └── runConfigurations.xml ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── masking │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── masking │ │ │ │ ├── MainActivity.java │ │ │ │ ├── MaskedSquare.java │ │ │ │ ├── Model.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ ├── OGLView.java │ │ │ │ └── glkit │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── ShaderProgram.java │ │ │ │ ├── ShaderUtils.java │ │ │ │ └── TextureUtils.java │ │ └── res │ │ │ ├── drawable-nodpi │ │ │ ├── picture.png │ │ │ ├── picture_frame.png │ │ │ └── picture_frame_mask.png │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ ├── simple_fragment_shader.glsl │ │ │ └── simple_vertex_shader.glsl │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── masking │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.gif └── settings.gradle ├── 08-1.AmbientLight ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── misc.xml │ ├── modules.xml │ └── runConfigurations.xml ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── ambientlight │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── ambientlight │ │ │ │ ├── Cube.java │ │ │ │ ├── MainActivity.java │ │ │ │ ├── Model.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ ├── OGLView.java │ │ │ │ └── glkit │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── ShaderProgram.java │ │ │ │ ├── ShaderUtils.java │ │ │ │ └── TextureUtils.java │ │ └── res │ │ │ ├── drawable-nodpi │ │ │ └── dungeon_01.png │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ ├── simple_fragment_shader.glsl │ │ │ └── simple_vertex_shader.glsl │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── ambientlight │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.gif └── settings.gradle ├── 08-2.DiffuseLight ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── misc.xml │ ├── modules.xml │ └── runConfigurations.xml ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── diffuselight │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── diffuselight │ │ │ │ ├── Cube.java │ │ │ │ ├── MainActivity.java │ │ │ │ ├── Model.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ ├── OGLView.java │ │ │ │ └── glkit │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── ShaderProgram.java │ │ │ │ ├── ShaderUtils.java │ │ │ │ └── TextureUtils.java │ │ └── res │ │ │ ├── drawable-nodpi │ │ │ └── dungeon_01.png │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ ├── simple_fragment_shader.glsl │ │ │ └── simple_vertex_shader.glsl │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── diffuselight │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.gif └── settings.gradle ├── 08-3.SpecularLight ├── .gitignore ├── .idea │ ├── .name │ ├── compiler.xml │ ├── copyright │ │ └── profiles_settings.xml │ ├── encodings.xml │ ├── gradle.xml │ ├── misc.xml │ ├── modules.xml │ └── runConfigurations.xml ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── kr │ │ │ └── pe │ │ │ └── burt │ │ │ └── android │ │ │ └── specularlight │ │ │ └── ApplicationTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── kr │ │ │ │ └── pe │ │ │ │ └── burt │ │ │ │ └── android │ │ │ │ └── specularlight │ │ │ │ ├── Cube.java │ │ │ │ ├── MainActivity.java │ │ │ │ ├── Model.java │ │ │ │ ├── OGLRenderer.java │ │ │ │ ├── OGLView.java │ │ │ │ └── glkit │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── ShaderProgram.java │ │ │ │ ├── ShaderUtils.java │ │ │ │ └── TextureUtils.java │ │ └── res │ │ │ ├── drawable-nodpi │ │ │ └── dungeon_01.png │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ ├── simple_fragment_shader.glsl │ │ │ └── simple_vertex_shader.glsl │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── kr │ │ └── pe │ │ └── burt │ │ └── android │ │ └── specularlight │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── result.gif └── settings.gradle ├── LICENSE └── README.md /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/.DS_Store -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Built application files 2 | *.apk 3 | *.ap_ 4 | 5 | # Files for the Dalvik VM 6 | *.dex 7 | 8 | # Java class files 9 | *.class 10 | 11 | # Generated files 12 | bin/ 13 | gen/ 14 | 15 | # Gradle files 16 | .gradle/ 17 | build/ 18 | 19 | # Local configuration file (sdk path, etc) 20 | local.properties 21 | 22 | # Proguard folder generated by Eclipse 23 | proguard/ 24 | 25 | # Log Files 26 | *.log 27 | 28 | # Android Studio Navigation editor temp files 29 | .navigation/ 30 | 31 | # Android Studio captures folder 32 | captures/ 33 | -------------------------------------------------------------------------------- /01.HelloOpenGL/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /01.HelloOpenGL/.idea/.name: -------------------------------------------------------------------------------- 1 | HelloOpenGL -------------------------------------------------------------------------------- /01.HelloOpenGL/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /01.HelloOpenGL/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /01.HelloOpenGL/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /01.HelloOpenGL/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /01.HelloOpenGL/app/src/androidTest/java/kr/pe/burt/android/helloopengl/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.helloopengl; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /01.HelloOpenGL/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | 13 | -------------------------------------------------------------------------------- /01.HelloOpenGL/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/01.HelloOpenGL/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /01.HelloOpenGL/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/01.HelloOpenGL/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /01.HelloOpenGL/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/01.HelloOpenGL/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /01.HelloOpenGL/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/01.HelloOpenGL/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /01.HelloOpenGL/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/01.HelloOpenGL/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /01.HelloOpenGL/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /01.HelloOpenGL/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /01.HelloOpenGL/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /01.HelloOpenGL/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | HelloOpenGL 3 | 4 | -------------------------------------------------------------------------------- /01.HelloOpenGL/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /01.HelloOpenGL/app/src/test/java/kr/pe/burt/android/helloopengl/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.helloopengl; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /01.HelloOpenGL/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | repositories { 5 | jcenter() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:2.1.0' 9 | 10 | // NOTE: Do not place your application dependencies here; they belong 11 | // in the individual module build.gradle files 12 | } 13 | } 14 | 15 | allprojects { 16 | repositories { 17 | jcenter() 18 | } 19 | } 20 | 21 | task clean(type: Delete) { 22 | delete rootProject.buildDir 23 | } 24 | -------------------------------------------------------------------------------- /01.HelloOpenGL/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/01.HelloOpenGL/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /01.HelloOpenGL/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /01.HelloOpenGL/result.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/01.HelloOpenGL/result.png -------------------------------------------------------------------------------- /01.HelloOpenGL/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /01.RedAlert/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /01.RedAlert/.idea/.name: -------------------------------------------------------------------------------- 1 | RedAlert -------------------------------------------------------------------------------- /01.RedAlert/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /01.RedAlert/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /01.RedAlert/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /01.RedAlert/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /01.RedAlert/app/src/androidTest/java/kr/pe/burt/android/redalert/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.redalert; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /01.RedAlert/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | 13 | -------------------------------------------------------------------------------- /01.RedAlert/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/01.RedAlert/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /01.RedAlert/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/01.RedAlert/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /01.RedAlert/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/01.RedAlert/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /01.RedAlert/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/01.RedAlert/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /01.RedAlert/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/01.RedAlert/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /01.RedAlert/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /01.RedAlert/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /01.RedAlert/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /01.RedAlert/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | RedAlert 3 | 4 | -------------------------------------------------------------------------------- /01.RedAlert/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /01.RedAlert/app/src/test/java/kr/pe/burt/android/redalert/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.redalert; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /01.RedAlert/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | repositories { 5 | jcenter() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:2.1.0' 9 | 10 | // NOTE: Do not place your application dependencies here; they belong 11 | // in the individual module build.gradle files 12 | } 13 | } 14 | 15 | allprojects { 16 | repositories { 17 | jcenter() 18 | } 19 | } 20 | 21 | task clean(type: Delete) { 22 | delete rootProject.buildDir 23 | } 24 | -------------------------------------------------------------------------------- /01.RedAlert/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/01.RedAlert/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /01.RedAlert/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /01.RedAlert/result.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/01.RedAlert/result.gif -------------------------------------------------------------------------------- /01.RedAlert/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /02.Square/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /02.Square/.idea/.name: -------------------------------------------------------------------------------- 1 | Square -------------------------------------------------------------------------------- /02.Square/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /02.Square/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /02.Square/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /02.Square/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /02.Square/app/src/androidTest/java/kr/pe/burt/android/square/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.square; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /02.Square/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | 13 | -------------------------------------------------------------------------------- /02.Square/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Square/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /02.Square/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Square/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /02.Square/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Square/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /02.Square/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Square/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /02.Square/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Square/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /02.Square/app/src/main/res/raw/simple_fragment_shader.glsl: -------------------------------------------------------------------------------- 1 | precision mediump float; 2 | 3 | void main() { 4 | gl_FragColor = vec4(1, 1, 1, 1); 5 | } 6 | -------------------------------------------------------------------------------- /02.Square/app/src/main/res/raw/simple_vertex_shader.glsl: -------------------------------------------------------------------------------- 1 | attribute vec4 a_Position; 2 | 3 | void main(void) { 4 | gl_Position = a_Position; 5 | } -------------------------------------------------------------------------------- /02.Square/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /02.Square/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /02.Square/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /02.Square/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Square 3 | 4 | -------------------------------------------------------------------------------- /02.Square/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /02.Square/app/src/test/java/kr/pe/burt/android/square/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.square; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /02.Square/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | repositories { 5 | jcenter() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:2.1.2' 9 | 10 | // NOTE: Do not place your application dependencies here; they belong 11 | // in the individual module build.gradle files 12 | } 13 | } 14 | 15 | allprojects { 16 | repositories { 17 | jcenter() 18 | } 19 | } 20 | 21 | task clean(type: Delete) { 22 | delete rootProject.buildDir 23 | } 24 | -------------------------------------------------------------------------------- /02.Square/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Square/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /02.Square/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /02.Square/result.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Square/result.png -------------------------------------------------------------------------------- /02.Square/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /02.Star/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /02.Star/.idea/.name: -------------------------------------------------------------------------------- 1 | 02.Star -------------------------------------------------------------------------------- /02.Star/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /02.Star/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /02.Star/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /02.Star/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /02.Star/app/src/androidTest/java/kr/pe/burt/android/star/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.star; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /02.Star/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | 13 | -------------------------------------------------------------------------------- /02.Star/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Star/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /02.Star/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Star/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /02.Star/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Star/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /02.Star/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Star/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /02.Star/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Star/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /02.Star/app/src/main/res/raw/simple_fragment_shader.glsl: -------------------------------------------------------------------------------- 1 | precision mediump float; 2 | 3 | void main() { 4 | gl_FragColor = vec4(1, 1, 1, 1); 5 | } 6 | -------------------------------------------------------------------------------- /02.Star/app/src/main/res/raw/simple_vertex_shader.glsl: -------------------------------------------------------------------------------- 1 | attribute vec4 a_Position; 2 | 3 | void main(void) { 4 | gl_Position = a_Position; 5 | } -------------------------------------------------------------------------------- /02.Star/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /02.Star/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /02.Star/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /02.Star/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Star 3 | 4 | -------------------------------------------------------------------------------- /02.Star/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /02.Star/app/src/test/java/kr/pe/burt/android/star/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.star; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /02.Star/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | repositories { 5 | jcenter() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:2.1.0' 9 | 10 | // NOTE: Do not place your application dependencies here; they belong 11 | // in the individual module build.gradle files 12 | } 13 | } 14 | 15 | allprojects { 16 | repositories { 17 | jcenter() 18 | } 19 | } 20 | 21 | task clean(type: Delete) { 22 | delete rootProject.buildDir 23 | } 24 | -------------------------------------------------------------------------------- /02.Star/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Star/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /02.Star/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /02.Star/result.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Star/result.png -------------------------------------------------------------------------------- /02.Star/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /02.Triangle/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /02.Triangle/.idea/.name: -------------------------------------------------------------------------------- 1 | 02.Triangle -------------------------------------------------------------------------------- /02.Triangle/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /02.Triangle/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /02.Triangle/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /02.Triangle/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /02.Triangle/app/src/androidTest/java/kr/pe/burt/android/triangle/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.triangle; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /02.Triangle/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | 13 | -------------------------------------------------------------------------------- /02.Triangle/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Triangle/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /02.Triangle/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Triangle/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /02.Triangle/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Triangle/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /02.Triangle/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Triangle/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /02.Triangle/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Triangle/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /02.Triangle/app/src/main/res/raw/simple_fragment_shader.glsl: -------------------------------------------------------------------------------- 1 | precision mediump float; 2 | 3 | void main() { 4 | gl_FragColor = vec4(1, 1, 1, 1); 5 | } 6 | -------------------------------------------------------------------------------- /02.Triangle/app/src/main/res/raw/simple_vertex_shader.glsl: -------------------------------------------------------------------------------- 1 | attribute vec4 a_Position; 2 | 3 | void main(void) { 4 | gl_Position = a_Position; 5 | } -------------------------------------------------------------------------------- /02.Triangle/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /02.Triangle/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /02.Triangle/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /02.Triangle/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Triangle 3 | 4 | -------------------------------------------------------------------------------- /02.Triangle/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /02.Triangle/app/src/test/java/kr/pe/burt/android/triangle/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.triangle; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /02.Triangle/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | repositories { 5 | jcenter() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:2.1.2' 9 | 10 | // NOTE: Do not place your application dependencies here; they belong 11 | // in the individual module build.gradle files 12 | } 13 | } 14 | 15 | allprojects { 16 | repositories { 17 | jcenter() 18 | } 19 | } 20 | 21 | task clean(type: Delete) { 22 | delete rootProject.buildDir 23 | } 24 | -------------------------------------------------------------------------------- /02.Triangle/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Triangle/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /02.Triangle/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /02.Triangle/result.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/02.Triangle/result.png -------------------------------------------------------------------------------- /02.Triangle/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /03.ColoredIndexSquare/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /03.ColoredIndexSquare/.idea/.name: -------------------------------------------------------------------------------- 1 | ColoredIndexSquare -------------------------------------------------------------------------------- /03.ColoredIndexSquare/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /03.ColoredIndexSquare/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /03.ColoredIndexSquare/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /03.ColoredIndexSquare/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /03.ColoredIndexSquare/app/src/androidTest/java/kr/pe/burt/android/coloredindexsquare/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.coloredindexsquare; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /03.ColoredIndexSquare/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | -------------------------------------------------------------------------------- /03.ColoredIndexSquare/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/03.ColoredIndexSquare/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /03.ColoredIndexSquare/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/03.ColoredIndexSquare/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /03.ColoredIndexSquare/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/03.ColoredIndexSquare/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /03.ColoredIndexSquare/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/03.ColoredIndexSquare/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /03.ColoredIndexSquare/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/03.ColoredIndexSquare/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /03.ColoredIndexSquare/app/src/main/res/raw/simple_fragment_shader.glsl: -------------------------------------------------------------------------------- 1 | precision mediump float; 2 | 3 | varying lowp vec4 frag_Color; 4 | 5 | void main() { 6 | gl_FragColor = frag_Color; 7 | } 8 | -------------------------------------------------------------------------------- /03.ColoredIndexSquare/app/src/main/res/raw/simple_vertex_shader.glsl: -------------------------------------------------------------------------------- 1 | attribute vec4 a_Position; 2 | attribute vec4 a_Color; 3 | 4 | varying lowp vec4 frag_Color; 5 | 6 | void main(void) { 7 | frag_Color = a_Color; 8 | gl_Position = a_Position; 9 | } -------------------------------------------------------------------------------- /03.ColoredIndexSquare/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /03.ColoredIndexSquare/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /03.ColoredIndexSquare/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /03.ColoredIndexSquare/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | ColoredIndexSquare 3 | 4 | -------------------------------------------------------------------------------- /03.ColoredIndexSquare/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /03.ColoredIndexSquare/app/src/test/java/kr/pe/burt/android/coloredindexsquare/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.coloredindexsquare; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /03.ColoredIndexSquare/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | repositories { 5 | jcenter() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:2.1.2' 9 | 10 | // NOTE: Do not place your application dependencies here; they belong 11 | // in the individual module build.gradle files 12 | } 13 | } 14 | 15 | allprojects { 16 | repositories { 17 | jcenter() 18 | } 19 | } 20 | 21 | task clean(type: Delete) { 22 | delete rootProject.buildDir 23 | } 24 | -------------------------------------------------------------------------------- /03.ColoredIndexSquare/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/03.ColoredIndexSquare/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /03.ColoredIndexSquare/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /03.ColoredIndexSquare/result.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/03.ColoredIndexSquare/result.png -------------------------------------------------------------------------------- /03.ColoredIndexSquare/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /03.ColoredSquare/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /03.ColoredSquare/.idea/.name: -------------------------------------------------------------------------------- 1 | 03.ColoredSquare -------------------------------------------------------------------------------- /03.ColoredSquare/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /03.ColoredSquare/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /03.ColoredSquare/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /03.ColoredSquare/app/src/androidTest/java/kr/pe/burt/android/coloredsquare/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.coloredsquare; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /03.ColoredSquare/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | -------------------------------------------------------------------------------- /03.ColoredSquare/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/03.ColoredSquare/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /03.ColoredSquare/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/03.ColoredSquare/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /03.ColoredSquare/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/03.ColoredSquare/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /03.ColoredSquare/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/03.ColoredSquare/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /03.ColoredSquare/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/03.ColoredSquare/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /03.ColoredSquare/app/src/main/res/raw/simple_fragment_shader.glsl: -------------------------------------------------------------------------------- 1 | precision mediump float; 2 | 3 | varying lowp vec4 frag_Color; 4 | 5 | void main() { 6 | gl_FragColor = frag_Color; 7 | } 8 | -------------------------------------------------------------------------------- /03.ColoredSquare/app/src/main/res/raw/simple_vertex_shader.glsl: -------------------------------------------------------------------------------- 1 | attribute vec4 a_Position; 2 | attribute vec4 a_Color; 3 | 4 | varying lowp vec4 frag_Color; 5 | 6 | void main(void) { 7 | frag_Color = a_Color; 8 | gl_Position = a_Position; 9 | } -------------------------------------------------------------------------------- /03.ColoredSquare/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /03.ColoredSquare/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /03.ColoredSquare/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /03.ColoredSquare/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 03.ColoredSquare 3 | 4 | -------------------------------------------------------------------------------- /03.ColoredSquare/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /03.ColoredSquare/app/src/test/java/kr/pe/burt/android/coloredsquare/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.coloredsquare; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /03.ColoredSquare/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | repositories { 5 | jcenter() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:2.1.2' 9 | 10 | // NOTE: Do not place your application dependencies here; they belong 11 | // in the individual module build.gradle files 12 | } 13 | } 14 | 15 | allprojects { 16 | repositories { 17 | jcenter() 18 | } 19 | } 20 | 21 | task clean(type: Delete) { 22 | delete rootProject.buildDir 23 | } 24 | -------------------------------------------------------------------------------- /03.ColoredSquare/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/03.ColoredSquare/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /03.ColoredSquare/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /03.ColoredSquare/result.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/03.ColoredSquare/result.png -------------------------------------------------------------------------------- /03.ColoredSquare/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /04.VertexArrayObject/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /04.VertexArrayObject/.idea/.name: -------------------------------------------------------------------------------- 1 | VertexArrayObject -------------------------------------------------------------------------------- /04.VertexArrayObject/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /04.VertexArrayObject/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /04.VertexArrayObject/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /04.VertexArrayObject/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /04.VertexArrayObject/app/src/androidTest/java/kr/pe/burt/android/vertexarrayobject/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.vertexarrayobject; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /04.VertexArrayObject/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | -------------------------------------------------------------------------------- /04.VertexArrayObject/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/04.VertexArrayObject/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /04.VertexArrayObject/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/04.VertexArrayObject/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /04.VertexArrayObject/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/04.VertexArrayObject/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /04.VertexArrayObject/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/04.VertexArrayObject/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /04.VertexArrayObject/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/04.VertexArrayObject/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /04.VertexArrayObject/app/src/main/res/raw/simple_fragment_shader.glsl: -------------------------------------------------------------------------------- 1 | precision mediump float; 2 | 3 | varying lowp vec4 frag_Color; 4 | 5 | void main() { 6 | gl_FragColor = frag_Color; 7 | } 8 | -------------------------------------------------------------------------------- /04.VertexArrayObject/app/src/main/res/raw/simple_vertex_shader.glsl: -------------------------------------------------------------------------------- 1 | attribute vec4 a_Position; 2 | attribute vec4 a_Color; 3 | 4 | varying lowp vec4 frag_Color; 5 | 6 | void main(void) { 7 | frag_Color = a_Color; 8 | gl_Position = a_Position; 9 | } -------------------------------------------------------------------------------- /04.VertexArrayObject/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /04.VertexArrayObject/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /04.VertexArrayObject/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /04.VertexArrayObject/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | VertexArrayObject 3 | 4 | -------------------------------------------------------------------------------- /04.VertexArrayObject/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /04.VertexArrayObject/app/src/test/java/kr/pe/burt/android/vertexarrayobject/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.vertexarrayobject; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /04.VertexArrayObject/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | repositories { 5 | jcenter() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:2.1.2' 9 | 10 | // NOTE: Do not place your application dependencies here; they belong 11 | // in the individual module build.gradle files 12 | } 13 | } 14 | 15 | allprojects { 16 | repositories { 17 | jcenter() 18 | } 19 | } 20 | 21 | task clean(type: Delete) { 22 | delete rootProject.buildDir 23 | } 24 | -------------------------------------------------------------------------------- /04.VertexArrayObject/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/04.VertexArrayObject/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /04.VertexArrayObject/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /04.VertexArrayObject/result.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/04.VertexArrayObject/result.png -------------------------------------------------------------------------------- /04.VertexArrayObject/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /05.Model/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /05.Model/.idea/.name: -------------------------------------------------------------------------------- 1 | 05.Model -------------------------------------------------------------------------------- /05.Model/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /05.Model/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /05.Model/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /05.Model/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /05.Model/app/src/androidTest/java/kr/pe/burt/android/model/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.model; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /05.Model/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | -------------------------------------------------------------------------------- /05.Model/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/05.Model/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /05.Model/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/05.Model/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /05.Model/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/05.Model/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /05.Model/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/05.Model/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /05.Model/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/05.Model/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /05.Model/app/src/main/res/raw/simple_fragment_shader.glsl: -------------------------------------------------------------------------------- 1 | precision mediump float; 2 | 3 | varying lowp vec4 frag_Color; 4 | 5 | void main() { 6 | gl_FragColor = frag_Color; 7 | } 8 | -------------------------------------------------------------------------------- /05.Model/app/src/main/res/raw/simple_vertex_shader.glsl: -------------------------------------------------------------------------------- 1 | attribute vec4 a_Position; 2 | attribute vec4 a_Color; 3 | 4 | varying lowp vec4 frag_Color; 5 | 6 | void main(void) { 7 | frag_Color = a_Color; 8 | gl_Position = a_Position; 9 | } -------------------------------------------------------------------------------- /05.Model/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /05.Model/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /05.Model/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /05.Model/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 05.Model 3 | 4 | -------------------------------------------------------------------------------- /05.Model/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /05.Model/app/src/test/java/kr/pe/burt/android/model/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.model; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /05.Model/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | repositories { 5 | jcenter() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:2.1.2' 9 | 10 | // NOTE: Do not place your application dependencies here; they belong 11 | // in the individual module build.gradle files 12 | } 13 | } 14 | 15 | allprojects { 16 | repositories { 17 | jcenter() 18 | } 19 | } 20 | 21 | task clean(type: Delete) { 22 | delete rootProject.buildDir 23 | } 24 | -------------------------------------------------------------------------------- /05.Model/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/05.Model/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /05.Model/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /05.Model/result.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/05.Model/result.png -------------------------------------------------------------------------------- /05.Model/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /06-1.ModelTransformation/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /06-1.ModelTransformation/.idea/.name: -------------------------------------------------------------------------------- 1 | ModelTransformation -------------------------------------------------------------------------------- /06-1.ModelTransformation/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /06-1.ModelTransformation/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /06-1.ModelTransformation/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /06-1.ModelTransformation/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /06-1.ModelTransformation/app/src/androidTest/java/kr/pe/burt/android/modeltransformation/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.modeltransformation; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /06-1.ModelTransformation/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | -------------------------------------------------------------------------------- /06-1.ModelTransformation/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-1.ModelTransformation/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-1.ModelTransformation/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-1.ModelTransformation/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-1.ModelTransformation/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-1.ModelTransformation/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-1.ModelTransformation/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-1.ModelTransformation/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-1.ModelTransformation/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-1.ModelTransformation/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-1.ModelTransformation/app/src/main/res/raw/simple_fragment_shader.glsl: -------------------------------------------------------------------------------- 1 | precision mediump float; 2 | 3 | varying lowp vec4 frag_Color; 4 | 5 | void main() { 6 | gl_FragColor = frag_Color; 7 | } 8 | -------------------------------------------------------------------------------- /06-1.ModelTransformation/app/src/main/res/raw/simple_vertex_shader.glsl: -------------------------------------------------------------------------------- 1 | uniform highp mat4 u_ModelViewMatrix; 2 | 3 | attribute vec4 a_Position; 4 | attribute vec4 a_Color; 5 | 6 | varying lowp vec4 frag_Color; 7 | 8 | void main(void) { 9 | frag_Color = a_Color; 10 | gl_Position = u_ModelViewMatrix * a_Position; 11 | } -------------------------------------------------------------------------------- /06-1.ModelTransformation/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /06-1.ModelTransformation/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /06-1.ModelTransformation/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /06-1.ModelTransformation/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | ModelTransformation 3 | 4 | -------------------------------------------------------------------------------- /06-1.ModelTransformation/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /06-1.ModelTransformation/app/src/test/java/kr/pe/burt/android/modeltransformation/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.modeltransformation; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /06-1.ModelTransformation/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-1.ModelTransformation/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /06-1.ModelTransformation/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /06-1.ModelTransformation/result.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-1.ModelTransformation/result.png -------------------------------------------------------------------------------- /06-1.ModelTransformation/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/.idea/.name: -------------------------------------------------------------------------------- 1 | ModelTransformation-Animation -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/app/src/androidTest/java/kr/pe/burt/android/modeltransformation_animation/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.modeltransformation_animation; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-2.ModelTransformation-Animation/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-2.ModelTransformation-Animation/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-2.ModelTransformation-Animation/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-2.ModelTransformation-Animation/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-2.ModelTransformation-Animation/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/app/src/main/res/raw/simple_fragment_shader.glsl: -------------------------------------------------------------------------------- 1 | precision mediump float; 2 | 3 | varying lowp vec4 frag_Color; 4 | 5 | void main() { 6 | gl_FragColor = frag_Color; 7 | } 8 | -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/app/src/main/res/raw/simple_vertex_shader.glsl: -------------------------------------------------------------------------------- 1 | uniform highp mat4 u_ModelViewMatrix; 2 | 3 | attribute vec4 a_Position; 4 | attribute vec4 a_Color; 5 | 6 | varying lowp vec4 frag_Color; 7 | 8 | void main(void) { 9 | frag_Color = a_Color; 10 | gl_Position = u_ModelViewMatrix * a_Position; 11 | } -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | ModelTransformation-Animation 3 | 4 | -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/app/src/test/java/kr/pe/burt/android/modeltransformation_animation/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.modeltransformation_animation; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-2.ModelTransformation-Animation/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/result.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-2.ModelTransformation-Animation/result.gif -------------------------------------------------------------------------------- /06-2.ModelTransformation-Animation/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /06-3.ViewTransformation/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /06-3.ViewTransformation/.idea/.name: -------------------------------------------------------------------------------- 1 | ViewTransformation -------------------------------------------------------------------------------- /06-3.ViewTransformation/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /06-3.ViewTransformation/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /06-3.ViewTransformation/.idea/libraries/hamcrest_core_1_3.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /06-3.ViewTransformation/.idea/libraries/junit_4_12.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /06-3.ViewTransformation/.idea/libraries/support_annotations_23_4_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /06-3.ViewTransformation/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /06-3.ViewTransformation/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /06-3.ViewTransformation/app/src/androidTest/java/kr/pe/burt/android/viewtransformation/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.viewtransformation; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /06-3.ViewTransformation/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | -------------------------------------------------------------------------------- /06-3.ViewTransformation/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-3.ViewTransformation/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-3.ViewTransformation/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-3.ViewTransformation/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-3.ViewTransformation/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-3.ViewTransformation/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-3.ViewTransformation/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-3.ViewTransformation/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-3.ViewTransformation/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-3.ViewTransformation/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-3.ViewTransformation/app/src/main/res/raw/simple_fragment_shader.glsl: -------------------------------------------------------------------------------- 1 | precision mediump float; 2 | 3 | varying lowp vec4 frag_Color; 4 | 5 | void main() { 6 | gl_FragColor = frag_Color; 7 | } 8 | -------------------------------------------------------------------------------- /06-3.ViewTransformation/app/src/main/res/raw/simple_vertex_shader.glsl: -------------------------------------------------------------------------------- 1 | uniform highp mat4 u_ModelViewMatrix; 2 | 3 | attribute vec4 a_Position; 4 | attribute vec4 a_Color; 5 | 6 | varying lowp vec4 frag_Color; 7 | 8 | void main(void) { 9 | frag_Color = a_Color; 10 | gl_Position = u_ModelViewMatrix * a_Position; 11 | } -------------------------------------------------------------------------------- /06-3.ViewTransformation/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /06-3.ViewTransformation/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /06-3.ViewTransformation/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /06-3.ViewTransformation/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | ViewTransformation 3 | 4 | -------------------------------------------------------------------------------- /06-3.ViewTransformation/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /06-3.ViewTransformation/app/src/test/java/kr/pe/burt/android/viewtransformation/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.viewtransformation; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /06-3.ViewTransformation/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-3.ViewTransformation/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /06-3.ViewTransformation/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /06-3.ViewTransformation/result.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-3.ViewTransformation/result.gif -------------------------------------------------------------------------------- /06-3.ViewTransformation/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/.idea/.name: -------------------------------------------------------------------------------- 1 | ProjectionTransformation -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/.idea/libraries/hamcrest_core_1_3.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/.idea/libraries/junit_4_12.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/.idea/libraries/support_annotations_23_4_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/app/src/androidTest/java/kr/pe/burt/android/projectiontransformation/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.projectiontransformation; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-4.ProjectionTransformation/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-4.ProjectionTransformation/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-4.ProjectionTransformation/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-4.ProjectionTransformation/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-4.ProjectionTransformation/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/app/src/main/res/raw/simple_fragment_shader.glsl: -------------------------------------------------------------------------------- 1 | precision mediump float; 2 | 3 | varying lowp vec4 frag_Color; 4 | 5 | void main() { 6 | gl_FragColor = frag_Color; 7 | } 8 | -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/app/src/main/res/raw/simple_vertex_shader.glsl: -------------------------------------------------------------------------------- 1 | uniform highp mat4 u_ModelViewMatrix; 2 | uniform highp mat4 u_ProjectionMatrix; 3 | 4 | attribute vec4 a_Position; 5 | attribute vec4 a_Color; 6 | 7 | varying lowp vec4 frag_Color; 8 | 9 | void main(void) { 10 | frag_Color = a_Color; 11 | gl_Position = u_ProjectionMatrix * u_ModelViewMatrix * a_Position; 12 | } -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | ProjectionTransformation 3 | 4 | -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/app/src/test/java/kr/pe/burt/android/projectiontransformation/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.projectiontransformation; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-4.ProjectionTransformation/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/result.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-4.ProjectionTransformation/result.gif -------------------------------------------------------------------------------- /06-4.ProjectionTransformation/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /06-5.AnimateCube/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /06-5.AnimateCube/.idea/.name: -------------------------------------------------------------------------------- 1 | AnimateCube -------------------------------------------------------------------------------- /06-5.AnimateCube/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /06-5.AnimateCube/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /06-5.AnimateCube/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /06-5.AnimateCube/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /06-5.AnimateCube/app/src/androidTest/java/kr/pe/burt/android/animatecube/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.animatecube; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /06-5.AnimateCube/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | -------------------------------------------------------------------------------- /06-5.AnimateCube/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-5.AnimateCube/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-5.AnimateCube/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-5.AnimateCube/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-5.AnimateCube/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-5.AnimateCube/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-5.AnimateCube/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-5.AnimateCube/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-5.AnimateCube/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-5.AnimateCube/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-5.AnimateCube/app/src/main/res/raw/simple_fragment_shader.glsl: -------------------------------------------------------------------------------- 1 | precision mediump float; 2 | 3 | varying lowp vec4 frag_Color; 4 | 5 | void main() { 6 | gl_FragColor = frag_Color; 7 | } 8 | -------------------------------------------------------------------------------- /06-5.AnimateCube/app/src/main/res/raw/simple_vertex_shader.glsl: -------------------------------------------------------------------------------- 1 | uniform highp mat4 u_ModelViewMatrix; 2 | uniform highp mat4 u_ProjectionMatrix; 3 | 4 | attribute vec4 a_Position; 5 | attribute vec4 a_Color; 6 | 7 | varying lowp vec4 frag_Color; 8 | 9 | void main(void) { 10 | frag_Color = a_Color; 11 | gl_Position = u_ProjectionMatrix * u_ModelViewMatrix * a_Position; 12 | } -------------------------------------------------------------------------------- /06-5.AnimateCube/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /06-5.AnimateCube/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /06-5.AnimateCube/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /06-5.AnimateCube/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | AnimateCube 3 | 4 | -------------------------------------------------------------------------------- /06-5.AnimateCube/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /06-5.AnimateCube/app/src/test/java/kr/pe/burt/android/animatecube/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.animatecube; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /06-5.AnimateCube/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | repositories { 5 | jcenter() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:2.1.2' 9 | 10 | // NOTE: Do not place your application dependencies here; they belong 11 | // in the individual module build.gradle files 12 | } 13 | } 14 | 15 | allprojects { 16 | repositories { 17 | jcenter() 18 | } 19 | } 20 | 21 | task clean(type: Delete) { 22 | delete rootProject.buildDir 23 | } 24 | -------------------------------------------------------------------------------- /06-5.AnimateCube/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-5.AnimateCube/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /06-5.AnimateCube/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /06-5.AnimateCube/result.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-5.AnimateCube/result.gif -------------------------------------------------------------------------------- /06-5.AnimateCube/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /06-6.DepthAndCulling/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /06-6.DepthAndCulling/.idea/.name: -------------------------------------------------------------------------------- 1 | DepthAndCulling -------------------------------------------------------------------------------- /06-6.DepthAndCulling/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /06-6.DepthAndCulling/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /06-6.DepthAndCulling/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /06-6.DepthAndCulling/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /06-6.DepthAndCulling/app/src/androidTest/java/kr/pe/burt/android/depthandculling/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.depthandculling; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /06-6.DepthAndCulling/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | -------------------------------------------------------------------------------- /06-6.DepthAndCulling/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-6.DepthAndCulling/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-6.DepthAndCulling/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-6.DepthAndCulling/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-6.DepthAndCulling/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-6.DepthAndCulling/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-6.DepthAndCulling/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-6.DepthAndCulling/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-6.DepthAndCulling/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-6.DepthAndCulling/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /06-6.DepthAndCulling/app/src/main/res/raw/simple_fragment_shader.glsl: -------------------------------------------------------------------------------- 1 | precision mediump float; 2 | 3 | varying lowp vec4 frag_Color; 4 | 5 | void main() { 6 | gl_FragColor = frag_Color; 7 | } 8 | -------------------------------------------------------------------------------- /06-6.DepthAndCulling/app/src/main/res/raw/simple_vertex_shader.glsl: -------------------------------------------------------------------------------- 1 | uniform highp mat4 u_ModelViewMatrix; 2 | uniform highp mat4 u_ProjectionMatrix; 3 | 4 | attribute vec4 a_Position; 5 | attribute vec4 a_Color; 6 | 7 | varying lowp vec4 frag_Color; 8 | 9 | void main(void) { 10 | frag_Color = a_Color; 11 | gl_Position = u_ProjectionMatrix * u_ModelViewMatrix * a_Position; 12 | } -------------------------------------------------------------------------------- /06-6.DepthAndCulling/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /06-6.DepthAndCulling/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /06-6.DepthAndCulling/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /06-6.DepthAndCulling/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | DepthAndCulling 3 | 4 | -------------------------------------------------------------------------------- /06-6.DepthAndCulling/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /06-6.DepthAndCulling/app/src/test/java/kr/pe/burt/android/depthandculling/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.depthandculling; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /06-6.DepthAndCulling/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | repositories { 5 | jcenter() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:2.1.2' 9 | 10 | // NOTE: Do not place your application dependencies here; they belong 11 | // in the individual module build.gradle files 12 | } 13 | } 14 | 15 | allprojects { 16 | repositories { 17 | jcenter() 18 | } 19 | } 20 | 21 | task clean(type: Delete) { 22 | delete rootProject.buildDir 23 | } 24 | -------------------------------------------------------------------------------- /06-6.DepthAndCulling/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-6.DepthAndCulling/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /06-6.DepthAndCulling/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /06-6.DepthAndCulling/result.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/06-6.DepthAndCulling/result.gif -------------------------------------------------------------------------------- /06-6.DepthAndCulling/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /07-1.Texture/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /07-1.Texture/.idea/.name: -------------------------------------------------------------------------------- 1 | Texture -------------------------------------------------------------------------------- /07-1.Texture/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /07-1.Texture/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /07-1.Texture/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /07-1.Texture/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /07-1.Texture/app/src/androidTest/java/kr/pe/burt/android/texture/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.texture; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /07-1.Texture/app/src/main/res/drawable/dungeon_01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-1.Texture/app/src/main/res/drawable/dungeon_01.png -------------------------------------------------------------------------------- /07-1.Texture/app/src/main/res/drawable/razewarelogo_128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-1.Texture/app/src/main/res/drawable/razewarelogo_128.png -------------------------------------------------------------------------------- /07-1.Texture/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | -------------------------------------------------------------------------------- /07-1.Texture/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-1.Texture/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /07-1.Texture/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-1.Texture/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /07-1.Texture/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-1.Texture/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /07-1.Texture/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-1.Texture/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /07-1.Texture/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-1.Texture/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /07-1.Texture/app/src/main/res/raw/simple_fragment_shader.glsl: -------------------------------------------------------------------------------- 1 | precision mediump float; 2 | 3 | uniform sampler2D u_Texture; 4 | 5 | varying lowp vec4 frag_Color; 6 | varying lowp vec2 frag_TexCoord; 7 | 8 | void main() { 9 | gl_FragColor = frag_Color * texture2D(u_Texture, frag_TexCoord); 10 | } 11 | -------------------------------------------------------------------------------- /07-1.Texture/app/src/main/res/raw/simple_vertex_shader.glsl: -------------------------------------------------------------------------------- 1 | uniform highp mat4 u_ModelViewMatrix; 2 | uniform highp mat4 u_ProjectionMatrix; 3 | 4 | attribute vec4 a_Position; 5 | attribute vec4 a_Color; 6 | attribute vec2 a_TexCoord; 7 | 8 | varying lowp vec4 frag_Color; 9 | varying lowp vec2 frag_TexCoord; 10 | 11 | void main(void) { 12 | frag_Color = a_Color; 13 | frag_TexCoord = a_TexCoord; 14 | gl_Position = u_ProjectionMatrix * u_ModelViewMatrix * a_Position; 15 | } -------------------------------------------------------------------------------- /07-1.Texture/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /07-1.Texture/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /07-1.Texture/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /07-1.Texture/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Texture 3 | 4 | -------------------------------------------------------------------------------- /07-1.Texture/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /07-1.Texture/app/src/test/java/kr/pe/burt/android/texture/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.texture; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /07-1.Texture/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | repositories { 5 | jcenter() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:2.1.2' 9 | 10 | // NOTE: Do not place your application dependencies here; they belong 11 | // in the individual module build.gradle files 12 | } 13 | } 14 | 15 | allprojects { 16 | repositories { 17 | jcenter() 18 | } 19 | } 20 | 21 | task clean(type: Delete) { 22 | delete rootProject.buildDir 23 | } 24 | -------------------------------------------------------------------------------- /07-1.Texture/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-1.Texture/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /07-1.Texture/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /07-1.Texture/result.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-1.Texture/result.gif -------------------------------------------------------------------------------- /07-1.Texture/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /07-2.Dice/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /07-2.Dice/.idea/.name: -------------------------------------------------------------------------------- 1 | Dice -------------------------------------------------------------------------------- /07-2.Dice/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /07-2.Dice/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /07-2.Dice/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /07-2.Dice/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /07-2.Dice/app/src/androidTest/java/kr/pe/burt/android/dice/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.dice; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /07-2.Dice/app/src/main/res/drawable-nodpi/dice.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-2.Dice/app/src/main/res/drawable-nodpi/dice.png -------------------------------------------------------------------------------- /07-2.Dice/app/src/main/res/drawable-nodpi/razewarelogo_128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-2.Dice/app/src/main/res/drawable-nodpi/razewarelogo_128.png -------------------------------------------------------------------------------- /07-2.Dice/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | -------------------------------------------------------------------------------- /07-2.Dice/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-2.Dice/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /07-2.Dice/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-2.Dice/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /07-2.Dice/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-2.Dice/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /07-2.Dice/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-2.Dice/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /07-2.Dice/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-2.Dice/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /07-2.Dice/app/src/main/res/raw/simple_fragment_shader.glsl: -------------------------------------------------------------------------------- 1 | precision mediump float; 2 | 3 | uniform sampler2D u_Texture; 4 | 5 | varying lowp vec4 frag_Color; 6 | varying lowp vec2 frag_TexCoord; 7 | 8 | void main() { 9 | gl_FragColor = texture2D(u_Texture, frag_TexCoord); 10 | } 11 | -------------------------------------------------------------------------------- /07-2.Dice/app/src/main/res/raw/simple_vertex_shader.glsl: -------------------------------------------------------------------------------- 1 | uniform highp mat4 u_ModelViewMatrix; 2 | uniform highp mat4 u_ProjectionMatrix; 3 | 4 | attribute vec4 a_Position; 5 | attribute vec2 a_TexCoord; 6 | 7 | varying lowp vec4 frag_Color; 8 | varying lowp vec2 frag_TexCoord; 9 | 10 | void main(void) { 11 | frag_TexCoord = a_TexCoord; 12 | gl_Position = u_ProjectionMatrix * u_ModelViewMatrix * a_Position; 13 | } -------------------------------------------------------------------------------- /07-2.Dice/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /07-2.Dice/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /07-2.Dice/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /07-2.Dice/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Dice 3 | 4 | -------------------------------------------------------------------------------- /07-2.Dice/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /07-2.Dice/app/src/test/java/kr/pe/burt/android/dice/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.dice; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /07-2.Dice/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | repositories { 5 | jcenter() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:2.1.2' 9 | 10 | // NOTE: Do not place your application dependencies here; they belong 11 | // in the individual module build.gradle files 12 | } 13 | } 14 | 15 | allprojects { 16 | repositories { 17 | jcenter() 18 | } 19 | } 20 | 21 | task clean(type: Delete) { 22 | delete rootProject.buildDir 23 | } 24 | -------------------------------------------------------------------------------- /07-2.Dice/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-2.Dice/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /07-2.Dice/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /07-2.Dice/result.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-2.Dice/result.gif -------------------------------------------------------------------------------- /07-2.Dice/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /07-3.Masking/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /07-3.Masking/.idea/.name: -------------------------------------------------------------------------------- 1 | Masking -------------------------------------------------------------------------------- /07-3.Masking/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /07-3.Masking/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /07-3.Masking/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /07-3.Masking/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /07-3.Masking/app/src/androidTest/java/kr/pe/burt/android/masking/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.masking; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /07-3.Masking/app/src/main/res/drawable-nodpi/picture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-3.Masking/app/src/main/res/drawable-nodpi/picture.png -------------------------------------------------------------------------------- /07-3.Masking/app/src/main/res/drawable-nodpi/picture_frame.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-3.Masking/app/src/main/res/drawable-nodpi/picture_frame.png -------------------------------------------------------------------------------- /07-3.Masking/app/src/main/res/drawable-nodpi/picture_frame_mask.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-3.Masking/app/src/main/res/drawable-nodpi/picture_frame_mask.png -------------------------------------------------------------------------------- /07-3.Masking/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | -------------------------------------------------------------------------------- /07-3.Masking/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-3.Masking/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /07-3.Masking/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-3.Masking/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /07-3.Masking/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-3.Masking/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /07-3.Masking/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-3.Masking/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /07-3.Masking/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-3.Masking/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /07-3.Masking/app/src/main/res/raw/simple_fragment_shader.glsl: -------------------------------------------------------------------------------- 1 | precision mediump float; 2 | 3 | uniform sampler2D u_Texture; 4 | uniform sampler2D u_Mask; 5 | 6 | varying lowp vec2 frag_TexCoord; 7 | 8 | void main() { 9 | lowp vec4 texColor = texture2D(u_Texture, frag_TexCoord); 10 | lowp vec4 maskColor = texture2D(u_Mask, frag_TexCoord); 11 | gl_FragColor = vec4(texColor.r, texColor.g, texColor.b, maskColor.a * texColor.a); 12 | } 13 | -------------------------------------------------------------------------------- /07-3.Masking/app/src/main/res/raw/simple_vertex_shader.glsl: -------------------------------------------------------------------------------- 1 | uniform highp mat4 u_ModelViewMatrix; 2 | uniform highp mat4 u_ProjectionMatrix; 3 | 4 | attribute vec4 a_Position; 5 | attribute vec2 a_TexCoord; 6 | 7 | varying lowp vec4 frag_Color; 8 | varying lowp vec2 frag_TexCoord; 9 | 10 | void main(void) { 11 | frag_TexCoord = a_TexCoord; 12 | gl_Position = u_ProjectionMatrix * u_ModelViewMatrix * a_Position; 13 | } -------------------------------------------------------------------------------- /07-3.Masking/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /07-3.Masking/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /07-3.Masking/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /07-3.Masking/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Masking 3 | 4 | -------------------------------------------------------------------------------- /07-3.Masking/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /07-3.Masking/app/src/test/java/kr/pe/burt/android/masking/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.masking; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /07-3.Masking/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | repositories { 5 | jcenter() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:2.1.2' 9 | 10 | // NOTE: Do not place your application dependencies here; they belong 11 | // in the individual module build.gradle files 12 | } 13 | } 14 | 15 | allprojects { 16 | repositories { 17 | jcenter() 18 | } 19 | } 20 | 21 | task clean(type: Delete) { 22 | delete rootProject.buildDir 23 | } 24 | -------------------------------------------------------------------------------- /07-3.Masking/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-3.Masking/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /07-3.Masking/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /07-3.Masking/result.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/07-3.Masking/result.gif -------------------------------------------------------------------------------- /07-3.Masking/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /08-1.AmbientLight/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /08-1.AmbientLight/.idea/.name: -------------------------------------------------------------------------------- 1 | AmbientLight -------------------------------------------------------------------------------- /08-1.AmbientLight/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /08-1.AmbientLight/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /08-1.AmbientLight/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /08-1.AmbientLight/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /08-1.AmbientLight/app/src/androidTest/java/kr/pe/burt/android/ambientlight/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.ambientlight; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /08-1.AmbientLight/app/src/main/res/drawable-nodpi/dungeon_01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-1.AmbientLight/app/src/main/res/drawable-nodpi/dungeon_01.png -------------------------------------------------------------------------------- /08-1.AmbientLight/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | -------------------------------------------------------------------------------- /08-1.AmbientLight/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-1.AmbientLight/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /08-1.AmbientLight/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-1.AmbientLight/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /08-1.AmbientLight/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-1.AmbientLight/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /08-1.AmbientLight/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-1.AmbientLight/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /08-1.AmbientLight/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-1.AmbientLight/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /08-1.AmbientLight/app/src/main/res/raw/simple_fragment_shader.glsl: -------------------------------------------------------------------------------- 1 | precision mediump float; 2 | 3 | uniform sampler2D u_Texture; 4 | 5 | varying lowp vec4 frag_Color; 6 | varying lowp vec2 frag_TexCoord; 7 | 8 | struct Light { 9 | vec3 Color; 10 | float AmbientIntensity; 11 | }; 12 | 13 | uniform Light u_Light; 14 | 15 | void main() { 16 | 17 | lowp vec4 AmbientColor = vec4(u_Light.Color, 1.0) * u_Light.AmbientIntensity; 18 | gl_FragColor = texture2D(u_Texture, frag_TexCoord) * AmbientColor; 19 | } 20 | -------------------------------------------------------------------------------- /08-1.AmbientLight/app/src/main/res/raw/simple_vertex_shader.glsl: -------------------------------------------------------------------------------- 1 | uniform highp mat4 u_ModelViewMatrix; 2 | uniform highp mat4 u_ProjectionMatrix; 3 | 4 | attribute vec4 a_Position; 5 | attribute vec2 a_TexCoord; 6 | 7 | varying lowp vec4 frag_Color; 8 | varying lowp vec2 frag_TexCoord; 9 | 10 | void main(void) { 11 | frag_TexCoord = a_TexCoord; 12 | gl_Position = u_ProjectionMatrix * u_ModelViewMatrix * a_Position; 13 | } -------------------------------------------------------------------------------- /08-1.AmbientLight/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /08-1.AmbientLight/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /08-1.AmbientLight/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /08-1.AmbientLight/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | AmbientLight 3 | 4 | -------------------------------------------------------------------------------- /08-1.AmbientLight/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /08-1.AmbientLight/app/src/test/java/kr/pe/burt/android/ambientlight/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.ambientlight; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /08-1.AmbientLight/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | repositories { 5 | jcenter() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:2.1.2' 9 | 10 | // NOTE: Do not place your application dependencies here; they belong 11 | // in the individual module build.gradle files 12 | } 13 | } 14 | 15 | allprojects { 16 | repositories { 17 | jcenter() 18 | } 19 | } 20 | 21 | task clean(type: Delete) { 22 | delete rootProject.buildDir 23 | } 24 | -------------------------------------------------------------------------------- /08-1.AmbientLight/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-1.AmbientLight/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /08-1.AmbientLight/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /08-1.AmbientLight/result.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-1.AmbientLight/result.gif -------------------------------------------------------------------------------- /08-1.AmbientLight/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /08-2.DiffuseLight/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /08-2.DiffuseLight/.idea/.name: -------------------------------------------------------------------------------- 1 | DiffuseLight -------------------------------------------------------------------------------- /08-2.DiffuseLight/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /08-2.DiffuseLight/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /08-2.DiffuseLight/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /08-2.DiffuseLight/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /08-2.DiffuseLight/app/src/androidTest/java/kr/pe/burt/android/diffuselight/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.diffuselight; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /08-2.DiffuseLight/app/src/main/res/drawable-nodpi/dungeon_01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-2.DiffuseLight/app/src/main/res/drawable-nodpi/dungeon_01.png -------------------------------------------------------------------------------- /08-2.DiffuseLight/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | -------------------------------------------------------------------------------- /08-2.DiffuseLight/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-2.DiffuseLight/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /08-2.DiffuseLight/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-2.DiffuseLight/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /08-2.DiffuseLight/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-2.DiffuseLight/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /08-2.DiffuseLight/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-2.DiffuseLight/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /08-2.DiffuseLight/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-2.DiffuseLight/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /08-2.DiffuseLight/app/src/main/res/raw/simple_vertex_shader.glsl: -------------------------------------------------------------------------------- 1 | uniform highp mat4 u_ModelViewMatrix; 2 | uniform highp mat4 u_ProjectionMatrix; 3 | 4 | attribute vec4 a_Position; 5 | attribute vec2 a_TexCoord; 6 | attribute vec3 a_Normal; 7 | 8 | varying lowp vec4 frag_Color; 9 | varying lowp vec2 frag_TexCoord; 10 | varying lowp vec3 frag_Normal; 11 | 12 | void main(void) { 13 | frag_TexCoord = a_TexCoord; 14 | frag_Normal = (u_ModelViewMatrix * vec4(a_Normal, 0.0)).xyz; 15 | gl_Position = u_ProjectionMatrix * u_ModelViewMatrix * a_Position; 16 | } -------------------------------------------------------------------------------- /08-2.DiffuseLight/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /08-2.DiffuseLight/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /08-2.DiffuseLight/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /08-2.DiffuseLight/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | DiffuseLight 3 | 4 | -------------------------------------------------------------------------------- /08-2.DiffuseLight/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /08-2.DiffuseLight/app/src/test/java/kr/pe/burt/android/diffuselight/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.diffuselight; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /08-2.DiffuseLight/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-2.DiffuseLight/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /08-2.DiffuseLight/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /08-2.DiffuseLight/result.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-2.DiffuseLight/result.gif -------------------------------------------------------------------------------- /08-2.DiffuseLight/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /08-3.SpecularLight/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | -------------------------------------------------------------------------------- /08-3.SpecularLight/.idea/.name: -------------------------------------------------------------------------------- 1 | SpecularLight -------------------------------------------------------------------------------- /08-3.SpecularLight/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /08-3.SpecularLight/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /08-3.SpecularLight/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /08-3.SpecularLight/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /08-3.SpecularLight/app/src/androidTest/java/kr/pe/burt/android/specularlight/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.specularlight; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /08-3.SpecularLight/app/src/main/res/drawable-nodpi/dungeon_01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-3.SpecularLight/app/src/main/res/drawable-nodpi/dungeon_01.png -------------------------------------------------------------------------------- /08-3.SpecularLight/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | -------------------------------------------------------------------------------- /08-3.SpecularLight/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-3.SpecularLight/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /08-3.SpecularLight/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-3.SpecularLight/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /08-3.SpecularLight/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-3.SpecularLight/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /08-3.SpecularLight/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-3.SpecularLight/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /08-3.SpecularLight/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-3.SpecularLight/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /08-3.SpecularLight/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /08-3.SpecularLight/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /08-3.SpecularLight/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /08-3.SpecularLight/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | SpecularLight 3 | 4 | -------------------------------------------------------------------------------- /08-3.SpecularLight/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /08-3.SpecularLight/app/src/test/java/kr/pe/burt/android/specularlight/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package kr.pe.burt.android.specularlight; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * To work on unit tests, switch the Test Artifact in the Build Variants view. 9 | */ 10 | public class ExampleUnitTest { 11 | @Test 12 | public void addition_isCorrect() throws Exception { 13 | assertEquals(4, 2 + 2); 14 | } 15 | } -------------------------------------------------------------------------------- /08-3.SpecularLight/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-3.SpecularLight/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /08-3.SpecularLight/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Dec 28 10:00:20 PST 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip 7 | -------------------------------------------------------------------------------- /08-3.SpecularLight/result.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyfe79/LearningOpenGLES2-Android/25d14b178e3ec6023057d9bb32d8a19c3ce147bd/08-3.SpecularLight/result.gif -------------------------------------------------------------------------------- /08-3.SpecularLight/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | --------------------------------------------------------------------------------