Skip to content

Commit

Permalink
rearranging
Browse files Browse the repository at this point in the history
  • Loading branch information
colinrford committed Jan 22, 2025
1 parent 3f15ffd commit 7d5cb3e
Show file tree
Hide file tree
Showing 18 changed files with 268 additions and 325 deletions.
21 changes: 0 additions & 21 deletions App/Basic3DView.swift

This file was deleted.

17 changes: 0 additions & 17 deletions App/BasicSurfacesApp.swift

This file was deleted.

72 changes: 36 additions & 36 deletions BasicSurfaces.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@
objects = {

/* Begin PBXBuildFile section */
396FDF472D2B8B4F00DD7903 /* BasicSurface.swift in Sources */ = {isa = PBXBuildFile; fileRef = 396FDF442D2B8B4F00DD7903 /* BasicSurface.swift */; };
396FDF482D2B8B4F00DD7903 /* Sphere.swift in Sources */ = {isa = PBXBuildFile; fileRef = 396FDF452D2B8B4F00DD7903 /* Sphere.swift */; };
39DA9EBC2C703D580078A201 /* BasicSurfacesApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39DA9EBB2C703D580078A201 /* BasicSurfacesApp.swift */; };
39DA9EBE2C703D580078A201 /* Basic3DView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39DA9EBD2C703D580078A201 /* Basic3DView.swift */; };
39DA9EC02C703D5A0078A201 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 39DA9EBF2C703D5A0078A201 /* Assets.xcassets */; };
Expand All @@ -16,8 +18,6 @@
39DA9ED92C703D5A0078A201 /* BasicSurfacesUITestsLaunchTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39DA9ED82C703D5A0078A201 /* BasicSurfacesUITestsLaunchTests.swift */; };
39DA9EE52C7064070078A201 /* MetalUI in Frameworks */ = {isa = PBXBuildFile; productRef = 39DA9EE42C7064070078A201 /* MetalUI */; };
39DA9EE72C7064650078A201 /* Basic3DPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39DA9EE62C7064650078A201 /* Basic3DPresenter.swift */; };
39DA9EE92C70648B0078A201 /* BasicSurface.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39DA9EE82C70648B0078A201 /* BasicSurface.swift */; };
39DA9EEB2C7064FC0078A201 /* Sphere.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39DA9EEA2C7064FC0078A201 /* Sphere.swift */; };
39DA9EED2C71E5D70078A201 /* Basic3DRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39DA9EEC2C71E5D70078A201 /* Basic3DRenderer.swift */; };
39DA9EF12C71E7590078A201 /* sphere_generator.metal in Sources */ = {isa = PBXBuildFile; fileRef = 39DA9EF02C71E7590078A201 /* sphere_generator.metal */; };
39DA9EF52C71FB730078A201 /* basic_3d_shader.metal in Sources */ = {isa = PBXBuildFile; fileRef = 39DA9EF42C71FB730078A201 /* basic_3d_shader.metal */; };
Expand All @@ -43,6 +43,8 @@
/* End PBXContainerItemProxy section */

/* Begin PBXFileReference section */
396FDF442D2B8B4F00DD7903 /* BasicSurface.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BasicSurface.swift; sourceTree = "<group>"; };
396FDF452D2B8B4F00DD7903 /* Sphere.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Sphere.swift; sourceTree = "<group>"; };
39DA9EB92C703D580078A201 /* BasicSurfaces.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = BasicSurfaces.app; sourceTree = BUILT_PRODUCTS_DIR; };
39DA9EBB2C703D580078A201 /* BasicSurfacesApp.swift */ = {isa = PBXFileReference; indentWidth = 2; lastKnownFileType = sourcecode.swift; path = BasicSurfacesApp.swift; sourceTree = "<group>"; tabWidth = 2; };
39DA9EBD2C703D580078A201 /* Basic3DView.swift */ = {isa = PBXFileReference; indentWidth = 2; lastKnownFileType = sourcecode.swift; path = Basic3DView.swift; sourceTree = "<group>"; tabWidth = 2; };
Expand All @@ -54,8 +56,6 @@
39DA9ED62C703D5A0078A201 /* BasicSurfacesUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BasicSurfacesUITests.swift; sourceTree = "<group>"; };
39DA9ED82C703D5A0078A201 /* BasicSurfacesUITestsLaunchTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BasicSurfacesUITestsLaunchTests.swift; sourceTree = "<group>"; };
39DA9EE62C7064650078A201 /* Basic3DPresenter.swift */ = {isa = PBXFileReference; indentWidth = 2; lastKnownFileType = sourcecode.swift; path = Basic3DPresenter.swift; sourceTree = "<group>"; tabWidth = 2; };
39DA9EE82C70648B0078A201 /* BasicSurface.swift */ = {isa = PBXFileReference; indentWidth = 2; lastKnownFileType = sourcecode.swift; path = BasicSurface.swift; sourceTree = "<group>"; tabWidth = 2; usesTabs = 0; wrapsLines = 1; };
39DA9EEA2C7064FC0078A201 /* Sphere.swift */ = {isa = PBXFileReference; indentWidth = 2; lastKnownFileType = sourcecode.swift; path = Sphere.swift; sourceTree = "<group>"; tabWidth = 2; };
39DA9EEC2C71E5D70078A201 /* Basic3DRenderer.swift */ = {isa = PBXFileReference; indentWidth = 2; lastKnownFileType = sourcecode.swift; path = Basic3DRenderer.swift; sourceTree = "<group>"; tabWidth = 2; };
39DA9EF02C71E7590078A201 /* sphere_generator.metal */ = {isa = PBXFileReference; indentWidth = 2; lastKnownFileType = sourcecode.metal; path = sphere_generator.metal; sourceTree = "<group>"; tabWidth = 2; };
39DA9EF22C71E8020078A201 /* vertex.h */ = {isa = PBXFileReference; indentWidth = 2; lastKnownFileType = sourcecode.c.h; path = vertex.h; sourceTree = "<group>"; tabWidth = 2; };
Expand Down Expand Up @@ -104,21 +104,32 @@
isa = PBXGroup;
children = (
39DA9EBA2C703D580078A201 /* BasicSurfaces */,
39DA9EEE2C71E6130078A201 /* App */,
39DA9EF32C71F9500078A201 /* Resources */,
39DA9EEF2C71E7270078A201 /* Shaders */,
39DA9EF62C72018D0078A201 /* Utilities */,
39DA9ECB2C703D5A0078A201 /* BasicSurfacesTests */,
39DA9ED52C703D5A0078A201 /* BasicSurfacesUITests */,
3938F4FC24B07FC6009154DB /* Products */,
);
sourceTree = "<group>";
};
396FDF462D2B8B4F00DD7903 /* BasicSurface */ = {
isa = PBXGroup;
children = (
396FDF442D2B8B4F00DD7903 /* BasicSurface.swift */,
396FDF452D2B8B4F00DD7903 /* Sphere.swift */,
);
path = BasicSurface;
sourceTree = "<group>";
};
39DA9EBA2C703D580078A201 /* BasicSurfaces */ = {
isa = PBXGroup;
children = (
39DA9EE82C70648B0078A201 /* BasicSurface.swift */,
39DA9EEA2C7064FC0078A201 /* Sphere.swift */,
396FDF462D2B8B4F00DD7903 /* BasicSurface */,
39DA9EBB2C703D580078A201 /* BasicSurfacesApp.swift */,
39DA9EE62C7064650078A201 /* Basic3DPresenter.swift */,
39DA9EEC2C71E5D70078A201 /* Basic3DRenderer.swift */,
39DA9EBD2C703D580078A201 /* Basic3DView.swift */,
39DA9EF32C71F9500078A201 /* Resources */,
39DA9EEF2C71E7270078A201 /* Shaders */,
39DA9EF62C72018D0078A201 /* Utilities */,
);
indentWidth = 2;
path = BasicSurfaces;
Expand Down Expand Up @@ -150,19 +161,6 @@
path = BasicSurfacesUITests;
sourceTree = "<group>";
};
39DA9EEE2C71E6130078A201 /* App */ = {
isa = PBXGroup;
children = (
39DA9EE62C7064650078A201 /* Basic3DPresenter.swift */,
39DA9EEC2C71E5D70078A201 /* Basic3DRenderer.swift */,
39DA9EBB2C703D580078A201 /* BasicSurfacesApp.swift */,
39DA9EBD2C703D580078A201 /* Basic3DView.swift */,
);
indentWidth = 2;
path = App;
sourceTree = "<group>";
tabWidth = 2;
};
39DA9EEF2C71E7270078A201 /* Shaders */ = {
isa = PBXGroup;
children = (
Expand Down Expand Up @@ -264,7 +262,7 @@
attributes = {
BuildIndependentTargetsInParallel = YES;
LastSwiftUpdateCheck = 1540;
LastUpgradeCheck = 1540;
LastUpgradeCheck = 1620;
ORGANIZATIONNAME = "Colin Ford";
TargetAttributes = {
39DA9EB82C703D580078A201 = {
Expand Down Expand Up @@ -335,13 +333,13 @@
buildActionMask = 2147483647;
files = (
39DA9EED2C71E5D70078A201 /* Basic3DRenderer.swift in Sources */,
39DA9EEB2C7064FC0078A201 /* Sphere.swift in Sources */,
39DA9EE92C70648B0078A201 /* BasicSurface.swift in Sources */,
39DA9EBE2C703D580078A201 /* Basic3DView.swift in Sources */,
39DA9EF52C71FB730078A201 /* basic_3d_shader.metal in Sources */,
39DA9EBC2C703D580078A201 /* BasicSurfacesApp.swift in Sources */,
39DA9EF12C71E7590078A201 /* sphere_generator.metal in Sources */,
39DA9EF82C7202B30078A201 /* Uniforms.swift in Sources */,
396FDF472D2B8B4F00DD7903 /* BasicSurface.swift in Sources */,
396FDF482D2B8B4F00DD7903 /* Sphere.swift in Sources */,
39DA9EE72C7064650078A201 /* Basic3DPresenter.swift in Sources */,
39DA9EFA2C7202E70078A201 /* LinAlgStuff.swift in Sources */,
);
Expand Down Expand Up @@ -404,6 +402,7 @@
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_IDENTITY = "iPhone Developer";
DEVELOPMENT_ASSET_PATHS = "";
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
GCC_NO_COMMON_BLOCKS = YES;
Expand Down Expand Up @@ -453,6 +452,7 @@
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_IDENTITY = "iPhone Developer";
DEVELOPMENT_ASSET_PATHS = "";
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = NO;
GCC_NO_COMMON_BLOCKS = YES;
Expand Down Expand Up @@ -488,6 +488,7 @@
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_OPTIMIZATION_PROFILE_FILE = "";
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
Expand All @@ -496,7 +497,7 @@
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 1;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_ASSET_PATHS = "\"Resources/Preview Content\"";
DEVELOPMENT_ASSET_PATHS = "\"BasicSurfaces/Resources/Preview Content\"";
DEVELOPMENT_TEAM = LJBDEYR255;
ENABLE_PREVIEWS = YES;
ENABLE_USER_SCRIPT_SANDBOXING = YES;
Expand All @@ -511,9 +512,9 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.graphics-design";
INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES;
INFOPLIST_KEY_UIApplicationSceneManifest_Generation = NO;
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
INFOPLIST_KEY_UILaunchScreen_Generation = YES;
INFOPLIST_KEY_UILaunchScreen_Generation = NO;
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
LD_RUNPATH_SEARCH_PATHS = (
Expand All @@ -533,6 +534,7 @@
SWIFT_OBJC_BRIDGING_HEADER = "";
SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2,6";
XROS_DEPLOYMENT_TARGET = "";
};
name = Debug;
};
Expand All @@ -548,6 +550,7 @@
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_OPTIMIZATION_PROFILE_FILE = "";
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
Expand All @@ -556,7 +559,7 @@
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 1;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_ASSET_PATHS = "\"Resources/Preview Content\"";
DEVELOPMENT_ASSET_PATHS = "\"BasicSurfaces/Resources/Preview Content\"";
DEVELOPMENT_TEAM = LJBDEYR255;
ENABLE_NS_ASSERTIONS = NO;
ENABLE_PREVIEWS = YES;
Expand All @@ -566,9 +569,9 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.graphics-design";
INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES;
INFOPLIST_KEY_UIApplicationSceneManifest_Generation = NO;
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
INFOPLIST_KEY_UILaunchScreen_Generation = YES;
INFOPLIST_KEY_UILaunchScreen_Generation = NO;
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
LD_RUNPATH_SEARCH_PATHS = (
Expand All @@ -589,13 +592,13 @@
SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2,6";
VALIDATE_PRODUCT = YES;
XROS_DEPLOYMENT_TARGET = "";
};
name = Release;
};
39DA9EDE2C703D5A0078A201 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES;
BUNDLE_LOADER = "$(TEST_HOST)";
CLANG_ANALYZER_NONNULL = YES;
Expand Down Expand Up @@ -641,7 +644,6 @@
39DA9EDF2C703D5A0078A201 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES;
BUNDLE_LOADER = "$(TEST_HOST)";
CLANG_ANALYZER_NONNULL = YES;
Expand Down Expand Up @@ -683,7 +685,6 @@
39DA9EE12C703D5A0078A201 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
Expand Down Expand Up @@ -727,7 +728,6 @@
39DA9EE22C703D5A0078A201 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1540"
LastUpgradeVersion = "1620"
version = "1.7">
<BuildAction
parallelizeBuildables = "YES"
Expand Down Expand Up @@ -62,6 +62,16 @@
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "39DA9EB82C703D580078A201"
BuildableName = "BasicSurfaces.app"
BlueprintName = "BasicSurfaces"
ReferencedContainer = "container:BasicSurfaces.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
<LocationScenarioReference
identifier = "com.apple.dt.IDEFoundation.CurrentLocationScenarioIdentifier"
referenceType = "1">
Expand Down
36 changes: 36 additions & 0 deletions BasicSurfaces/Basic3DPresenter.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
//
// Basic3DPresenter.swift
// BasicSurfaces
//
// Copyright © 2024 Colin Ford. All rights reserved.
//

import MetalUI
import MetalKit

class Basic3DPresenter: MTKView, MetalPresenting {
var renderer: MetalRendering!
var surface: BasicSurface!

required init() {
super.init(frame: .zero, device: MTLCreateSystemDefaultDevice())
configure(device: device)
}

required init(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}

func configureMTKView() {
colorPixelFormat = .bgra8Unorm
clearColor = MTLClearColor(red: 0, green: 0, blue: 0.1, alpha: 1)
depthStencilPixelFormat = .depth32Float
clearDepth = 1.0
}

func renderer(forDevice device: MTLDevice) -> MetalRendering {
surface = Sphere(device: device)//, radius: 2, vertexCount: 10240)
return Basic3DRenderer(mtkView: self, vertices: surface.vertices, device: device)
}
}

Loading

0 comments on commit 7d5cb3e

Please sign in to comment.