tweaking the camera

master
Jordan Orelli 5 years ago
parent a7302dc95e
commit c0513e07e2

@ -9,7 +9,11 @@ public class CameraController : MonoBehaviour {
public float maxVelocity = 10f; public float maxVelocity = 10f;
private Frame frame; private Frame frame;
private Vector3 velocity; private Vector3 velocity;
private Vector3 lastVelocity;
private Vector3 acceleration;
private Vector3 lastAcceleration;
// Start is called before the first frame update // Start is called before the first frame update
void Start() { void Start() {
@ -24,26 +28,32 @@ public class CameraController : MonoBehaviour {
// LateUpdate is called once per frame, after Update // LateUpdate is called once per frame, after Update
void LateUpdate() { void LateUpdate() {
if (!player) {
return;
}
setupFrame(); setupFrame();
Vector3 targetPosition = transform.position;
BoxCollider2D collider = player.GetComponent<BoxCollider2D>();
if (player) { if (collider.bounds.max.x > frame.topRight.x) {
BoxCollider2D collider = player.GetComponent<BoxCollider2D>(); targetPosition.x = collider.bounds.max.x - frame.topRight.x;
if (collider.bounds.max.x > frame.topRight.x) { }
transform.Translate(new Vector3(collider.bounds.max.x - frame.topRight.x, 0, 0)); if (collider.bounds.min.x < frame.topLeft.x) {
} targetPosition.x = collider.bounds.min.x - frame.topLeft.x;
if (collider.bounds.min.x < frame.topLeft.x) {
transform.Translate(new Vector3(collider.bounds.min.x - frame.topLeft.x, 0, 0));
}
if (collider.bounds.max.y > frame.topLeft.y) {
transform.Translate(new Vector3(0, collider.bounds.max.y - frame.topLeft.y, 0));
}
if (collider.bounds.min.y < frame.bottomLeft.y) {
transform.Translate(new Vector3(0, collider.bounds.min.y - frame.bottomLeft.y, 0));
}
} }
if (collider.bounds.max.y > frame.topLeft.y) {
targetPosition.y = collider.bounds.max.y - frame.topLeft.y;
}
if (collider.bounds.min.y < frame.bottomLeft.y) {
targetPosition.y = collider.bounds.min.y - frame.bottomLeft.y;
}
} }
void OnDrawGizmosSelected() { void OnDrawGizmosSelected() {
setupFrame();
Gizmos.color = Color.white; Gizmos.color = Color.white;
Gizmos.DrawLine(frame.topLeft, frame.topRight); Gizmos.DrawLine(frame.topLeft, frame.topRight);

@ -3,7 +3,7 @@
--- !u!129 &1 --- !u!129 &1
PlayerSettings: PlayerSettings:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
serializedVersion: 18 serializedVersion: 20
productGUID: 9bba7db75b80cce4ba7b59fdd8dce1eb productGUID: 9bba7db75b80cce4ba7b59fdd8dce1eb
AndroidProfiler: 0 AndroidProfiler: 0
AndroidFilterTouchesWhenObscured: 0 AndroidFilterTouchesWhenObscured: 0
@ -13,7 +13,7 @@ PlayerSettings:
useOnDemandResources: 0 useOnDemandResources: 0
accelerometerFrequency: 60 accelerometerFrequency: 60
companyName: DefaultCompany companyName: DefaultCompany
productName: Circle Wag productName: Dungeon Baby
defaultCursor: {fileID: 0} defaultCursor: {fileID: 0}
cursorHotspot: {x: 0, y: 0} cursorHotspot: {x: 0, y: 0}
m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: 0.1254902, a: 1} m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: 0.1254902, a: 1}
@ -52,7 +52,6 @@ PlayerSettings:
m_StackTraceTypes: 010000000100000001000000010000000100000001000000 m_StackTraceTypes: 010000000100000001000000010000000100000001000000
iosShowActivityIndicatorOnLoading: -1 iosShowActivityIndicatorOnLoading: -1
androidShowActivityIndicatorOnLoading: -1 androidShowActivityIndicatorOnLoading: -1
displayResolutionDialog: 1
iosUseCustomAppBackgroundBehavior: 0 iosUseCustomAppBackgroundBehavior: 0
iosAllowHTTPDownload: 1 iosAllowHTTPDownload: 1
allowedAutorotateToPortrait: 1 allowedAutorotateToPortrait: 1
@ -65,6 +64,7 @@ PlayerSettings:
disableDepthAndStencilBuffers: 0 disableDepthAndStencilBuffers: 0
androidStartInFullscreen: 1 androidStartInFullscreen: 1
androidRenderOutsideSafeArea: 0 androidRenderOutsideSafeArea: 0
androidUseSwappy: 0
androidBlitType: 0 androidBlitType: 0
defaultIsNativeResolution: 1 defaultIsNativeResolution: 1
macRetinaSupport: 1 macRetinaSupport: 1
@ -79,11 +79,11 @@ PlayerSettings:
usePlayerLog: 1 usePlayerLog: 1
bakeCollisionMeshes: 0 bakeCollisionMeshes: 0
forceSingleInstance: 0 forceSingleInstance: 0
useFlipModelSwapchain: 1
resizableWindow: 0 resizableWindow: 0
useMacAppStoreValidation: 0 useMacAppStoreValidation: 0
macAppStoreCategory: public.app-category.games macAppStoreCategory: public.app-category.games
gpuSkinning: 0 gpuSkinning: 0
graphicsJobs: 0
xboxPIXTextureCapture: 0 xboxPIXTextureCapture: 0
xboxEnableAvatar: 0 xboxEnableAvatar: 0
xboxEnableKinect: 0 xboxEnableKinect: 0
@ -91,7 +91,6 @@ PlayerSettings:
xboxEnableFitness: 0 xboxEnableFitness: 0
visibleInBackground: 1 visibleInBackground: 1
allowFullscreenSwitch: 1 allowFullscreenSwitch: 1
graphicsJobMode: 0
fullscreenMode: 1 fullscreenMode: 1
xboxSpeechDB: 0 xboxSpeechDB: 0
xboxEnableHeadOrientation: 0 xboxEnableHeadOrientation: 0
@ -104,6 +103,7 @@ PlayerSettings:
xboxOneMonoLoggingLevel: 0 xboxOneMonoLoggingLevel: 0
xboxOneLoggingLevel: 1 xboxOneLoggingLevel: 1
xboxOneDisableEsram: 0 xboxOneDisableEsram: 0
xboxOneEnableTypeOptimization: 0
xboxOnePresentImmediateThreshold: 0 xboxOnePresentImmediateThreshold: 0
switchQueueCommandMemory: 0 switchQueueCommandMemory: 0
switchQueueControlMemory: 16384 switchQueueControlMemory: 16384
@ -111,6 +111,7 @@ PlayerSettings:
switchNVNShaderPoolsGranularity: 33554432 switchNVNShaderPoolsGranularity: 33554432
switchNVNDefaultPoolsGranularity: 16777216 switchNVNDefaultPoolsGranularity: 16777216
switchNVNOtherPoolsGranularity: 16777216 switchNVNOtherPoolsGranularity: 16777216
vulkanNumSwapchainBuffers: 3
vulkanEnableSetSRGBWrite: 0 vulkanEnableSetSRGBWrite: 0
m_SupportedAspectRatios: m_SupportedAspectRatios:
4:3: 1 4:3: 1
@ -125,7 +126,6 @@ PlayerSettings:
m_HolographicPauseOnTrackingLoss: 1 m_HolographicPauseOnTrackingLoss: 1
xboxOneDisableKinectGpuReservation: 1 xboxOneDisableKinectGpuReservation: 1
xboxOneEnable7thCore: 1 xboxOneEnable7thCore: 1
isWsaHolographicRemotingEnabled: 0
vrSettings: vrSettings:
cardboard: cardboard:
depthFormat: 0 depthFormat: 0
@ -140,6 +140,12 @@ PlayerSettings:
hololens: hololens:
depthFormat: 1 depthFormat: 1
depthBufferSharingEnabled: 1 depthBufferSharingEnabled: 1
lumin:
depthFormat: 0
frameTiming: 2
enableGLCache: 0
glCacheMaxBlobSize: 524288
glCacheMaxFileSize: 8388608
oculus: oculus:
sharedDepthBuffer: 1 sharedDepthBuffer: 1
dashSupport: 1 dashSupport: 1
@ -147,9 +153,10 @@ PlayerSettings:
protectedContext: 0 protectedContext: 0
v2Signing: 0 v2Signing: 0
enable360StereoCapture: 0 enable360StereoCapture: 0
protectGraphicsMemory: 0 isWsaHolographicRemotingEnabled: 0
enableFrameTimingStats: 0 enableFrameTimingStats: 0
useHDRDisplay: 0 useHDRDisplay: 0
D3DHDRBitDepth: 0
m_ColorGamuts: 00000000 m_ColorGamuts: 00000000
targetPixelDensity: 30 targetPixelDensity: 30
resolutionScalingMode: 0 resolutionScalingMode: 0
@ -159,7 +166,7 @@ PlayerSettings:
Standalone: com.Company.ProductName Standalone: com.Company.ProductName
buildNumber: {} buildNumber: {}
AndroidBundleVersionCode: 1 AndroidBundleVersionCode: 1
AndroidMinSdkVersion: 16 AndroidMinSdkVersion: 19
AndroidTargetSdkVersion: 0 AndroidTargetSdkVersion: 0
AndroidPreferredInstallLocation: 1 AndroidPreferredInstallLocation: 1
aotOptions: aotOptions:
@ -174,10 +181,10 @@ PlayerSettings:
StripUnusedMeshComponents: 1 StripUnusedMeshComponents: 1
VertexChannelCompressionMask: 4054 VertexChannelCompressionMask: 4054
iPhoneSdkVersion: 988 iPhoneSdkVersion: 988
iOSTargetOSVersionString: 9.0 iOSTargetOSVersionString: 10.0
tvOSSdkVersion: 0 tvOSSdkVersion: 0
tvOSRequireExtendedGameController: 0 tvOSRequireExtendedGameController: 0
tvOSTargetOSVersionString: 9.0 tvOSTargetOSVersionString: 10.0
uIPrerenderedIcon: 0 uIPrerenderedIcon: 0
uIRequiresPersistentWiFi: 0 uIRequiresPersistentWiFi: 0
uIRequiresFullScreen: 1 uIRequiresFullScreen: 1
@ -196,6 +203,10 @@ PlayerSettings:
iPadHighResPortraitSplashScreen: {fileID: 0} iPadHighResPortraitSplashScreen: {fileID: 0}
iPadLandscapeSplashScreen: {fileID: 0} iPadLandscapeSplashScreen: {fileID: 0}
iPadHighResLandscapeSplashScreen: {fileID: 0} iPadHighResLandscapeSplashScreen: {fileID: 0}
iPhone65inPortraitSplashScreen: {fileID: 0}
iPhone65inLandscapeSplashScreen: {fileID: 0}
iPhone61inPortraitSplashScreen: {fileID: 0}
iPhone61inLandscapeSplashScreen: {fileID: 0}
appleTVSplashScreen: {fileID: 0} appleTVSplashScreen: {fileID: 0}
appleTVSplashScreen2x: {fileID: 0} appleTVSplashScreen2x: {fileID: 0}
tvOSSmallIconLayers: [] tvOSSmallIconLayers: []
@ -255,20 +266,54 @@ PlayerSettings:
AndroidEnableTango: 0 AndroidEnableTango: 0
androidEnableBanner: 1 androidEnableBanner: 1
androidUseLowAccuracyLocation: 0 androidUseLowAccuracyLocation: 0
androidUseCustomKeystore: 0
m_AndroidBanners: m_AndroidBanners:
- width: 320 - width: 320
height: 180 height: 180
banner: {fileID: 0} banner: {fileID: 0}
androidGamepadSupportLevel: 0 androidGamepadSupportLevel: 0
resolutionDialogBanner: {fileID: 0} AndroidValidateAppBundleSize: 1
AndroidAppBundleSizeToValidate: 150
m_BuildTargetIcons: [] m_BuildTargetIcons: []
m_BuildTargetPlatformIcons: [] m_BuildTargetPlatformIcons: []
m_BuildTargetBatching: [] m_BuildTargetBatching: []
m_BuildTargetGraphicsJobs:
- m_BuildTarget: MacStandaloneSupport
m_GraphicsJobs: 0
- m_BuildTarget: Switch
m_GraphicsJobs: 0
- m_BuildTarget: MetroSupport
m_GraphicsJobs: 0
- m_BuildTarget: AppleTVSupport
m_GraphicsJobs: 0
- m_BuildTarget: BJMSupport
m_GraphicsJobs: 0
- m_BuildTarget: LinuxStandaloneSupport
m_GraphicsJobs: 0
- m_BuildTarget: PS4Player
m_GraphicsJobs: 0
- m_BuildTarget: iOSSupport
m_GraphicsJobs: 0
- m_BuildTarget: WindowsStandaloneSupport
m_GraphicsJobs: 0
- m_BuildTarget: XboxOnePlayer
m_GraphicsJobs: 0
- m_BuildTarget: LuminSupport
m_GraphicsJobs: 0
- m_BuildTarget: AndroidPlayer
m_GraphicsJobs: 0
- m_BuildTarget: WebGLSupport
m_GraphicsJobs: 0
m_BuildTargetGraphicsJobMode:
- m_BuildTarget: PS4Player
m_GraphicsJobMode: 0
- m_BuildTarget: XboxOnePlayer
m_GraphicsJobMode: 0
m_BuildTargetGraphicsAPIs: [] m_BuildTargetGraphicsAPIs: []
m_BuildTargetVRSettings: [] m_BuildTargetVRSettings: []
m_BuildTargetEnableVuforiaSettings: []
openGLRequireES31: 0 openGLRequireES31: 0
openGLRequireES31AEP: 0 openGLRequireES31AEP: 0
openGLRequireES32: 0
m_TemplateCustomTags: {} m_TemplateCustomTags: {}
mobileMTRendering: mobileMTRendering:
Android: 1 Android: 1
@ -384,6 +429,7 @@ PlayerSettings:
switchRatingsInt_9: 0 switchRatingsInt_9: 0
switchRatingsInt_10: 0 switchRatingsInt_10: 0
switchRatingsInt_11: 0 switchRatingsInt_11: 0
switchRatingsInt_12: 0
switchLocalCommunicationIds_0: switchLocalCommunicationIds_0:
switchLocalCommunicationIds_1: switchLocalCommunicationIds_1:
switchLocalCommunicationIds_2: switchLocalCommunicationIds_2:
@ -452,6 +498,7 @@ PlayerSettings:
ps4DownloadDataSize: 0 ps4DownloadDataSize: 0
ps4GarlicHeapSize: 2048 ps4GarlicHeapSize: 2048
ps4ProGarlicHeapSize: 2560 ps4ProGarlicHeapSize: 2560
playerPrefsMaxSize: 32768
ps4Passcode: frAQBc8Wsa1xVPfvJcrgRYwTiizs2trQ ps4Passcode: frAQBc8Wsa1xVPfvJcrgRYwTiizs2trQ
ps4pnSessions: 1 ps4pnSessions: 1
ps4pnPresence: 1 ps4pnPresence: 1
@ -482,9 +529,11 @@ PlayerSettings:
ps4contentSearchFeaturesUsed: 0 ps4contentSearchFeaturesUsed: 0
ps4attribEyeToEyeDistanceSettingVR: 0 ps4attribEyeToEyeDistanceSettingVR: 0
ps4IncludedModules: [] ps4IncludedModules: []
ps4attribVROutputEnabled: 0
monoEnv: monoEnv:
splashScreenBackgroundSourceLandscape: {fileID: 0} splashScreenBackgroundSourceLandscape: {fileID: 0}
splashScreenBackgroundSourcePortrait: {fileID: 0} splashScreenBackgroundSourcePortrait: {fileID: 0}
blurSplashScreenBackground: 1
spritePackerPolicy: spritePackerPolicy:
webGLMemorySize: 256 webGLMemorySize: 256
webGLExceptionSupport: 1 webGLExceptionSupport: 1
@ -499,6 +548,7 @@ PlayerSettings:
webGLCompressionFormat: 1 webGLCompressionFormat: 1
webGLLinkerTarget: 1 webGLLinkerTarget: 1
webGLThreadsSupport: 0 webGLThreadsSupport: 0
webGLWasmStreaming: 0
scriptingDefineSymbols: {} scriptingDefineSymbols: {}
platformArchitecture: {} platformArchitecture: {}
scriptingBackend: {} scriptingBackend: {}
@ -508,6 +558,8 @@ PlayerSettings:
allowUnsafeCode: 0 allowUnsafeCode: 0
additionalIl2CppArgs: additionalIl2CppArgs:
scriptingRuntimeVersion: 1 scriptingRuntimeVersion: 1
gcIncremental: 0
gcWBarrierValidation: 0
apiCompatibilityLevelPerPlatform: {} apiCompatibilityLevelPerPlatform: {}
m_RenderingPath: 1 m_RenderingPath: 1
m_MobileRenderingPath: 1 m_MobileRenderingPath: 1
@ -538,7 +590,6 @@ PlayerSettings:
metroFTAName: metroFTAName:
metroFTAFileTypes: [] metroFTAFileTypes: []
metroProtocolName: metroProtocolName:
metroCompilationOverrides: 1
XboxOneProductId: XboxOneProductId:
XboxOneUpdateKey: XboxOneUpdateKey:
XboxOneSandboxId: XboxOneSandboxId:
@ -563,7 +614,6 @@ PlayerSettings:
XboxOneAllowedProductIds: [] XboxOneAllowedProductIds: []
XboxOnePersistentLocalStorageSize: 0 XboxOnePersistentLocalStorageSize: 0
XboxOneXTitleMemory: 8 XboxOneXTitleMemory: 8
xboxOneScriptCompiler: 1
XboxOneOverrideIdentityName: XboxOneOverrideIdentityName:
vrEditorSettings: vrEditorSettings:
daydream: daydream:
@ -577,18 +627,11 @@ PlayerSettings:
m_PortalFolderPath: m_PortalFolderPath:
luminCert: luminCert:
m_CertPath: m_CertPath:
m_PrivateKeyPath: m_SignPackage: 1
luminIsChannelApp: 0 luminIsChannelApp: 0
luminVersion: luminVersion:
m_VersionCode: 1 m_VersionCode: 1
m_VersionName: m_VersionName:
facebookSdkVersion: 7.9.4
facebookAppId:
facebookCookies: 1
facebookLogging: 1
facebookStatus: 1
facebookXfbml: 0
facebookFrictionlessRequests: 1
apiCompatibilityLevel: 6 apiCompatibilityLevel: 6
cloudProjectId: cloudProjectId:
framebufferDepthMemorylessMode: 0 framebufferDepthMemorylessMode: 0

Loading…
Cancel
Save