Hack fix bug when generating world with no chasms
Bug occured because we try to create an empty glNamedBufferStorage, instead just create a dummy storage with space for one element.
This commit is contained in:
+30
-30
@@ -57,36 +57,36 @@ tutAnoTree = do
|
||||
, lasCenRunClose
|
||||
-- , passthroughLockKeyLists lockRoomKeyItems itemRooms
|
||||
, tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor)
|
||||
-- , tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor)
|
||||
-- , tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor)
|
||||
-- , passthroughLockKeyLists
|
||||
-- [(sensorRoomRunPast ElectricSensor, takeOne
|
||||
-- [-- CRAFT (ENERGYBALLCRAFT TeslaBall) ,
|
||||
-- HELD SPARKGUN])]
|
||||
-- itemRooms
|
||||
-- , tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor)
|
||||
-- , tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor)
|
||||
, tToBTree "sdr" . return . cleatOnward <$>
|
||||
(shuffleLinks =<< distributerRoom BulletAmmo 100000)
|
||||
-- , return $ tToBTree "cor" $ return $ cleatOnward corridor
|
||||
-- --, tToBTree "sdr" . return . cleatOnward <$> slowDoorRoom
|
||||
---- , tToBTree "sr" . return . cleatOnward <$> tanksRoom [] []
|
||||
-- , return $ tToBTree "door" $ return $ cleatOnward door
|
||||
-- , return $ tToBTree "cor" $ return $ cleatOnward corridor
|
||||
-- , tToBTree "sdr" . return . cleatOnward <$>
|
||||
-- (shuffleLinks =<< tanksPipesRoom)
|
||||
-- , return $ tToBTree "cor" $ return $ cleatOnward corridor
|
||||
-- , return $ tToBTree "cor" $ return $ cleatOnward corridor
|
||||
-- , return $ tToBTree "cor" $ return $ cleatOnward corridor
|
||||
, return $ tToBTree "cor" $ return $ cleatOnward corridor
|
||||
, return $ tToBTree "cor" $ return $ cleatOnward corridor
|
||||
, return $ tToBTree "cor" $ return $ cleatOnward corridor
|
||||
, return $ tToBTree "door" $ return $ cleatOnward door
|
||||
, tutHub
|
||||
, chasmSpitTerminal
|
||||
, tutLight
|
||||
, tutDrop
|
||||
, return $ tToBTree "cor" $ return $ cleatOnward corridor
|
||||
--l-- , tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor)
|
||||
--l-- , tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor)
|
||||
--l-- , passthroughLockKeyLists
|
||||
--l-- [(sensorRoomRunPast ElectricSensor, takeOne
|
||||
--l-- [-- CRAFT (ENERGYBALLCRAFT TeslaBall) ,
|
||||
--l-- HELD SPARKGUN])]
|
||||
--l-- itemRooms
|
||||
--l-- , tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor)
|
||||
--l-- , tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor)
|
||||
--l , tToBTree "sdr" . return . cleatOnward <$>
|
||||
--l (shuffleLinks =<< distributerRoom BulletAmmo 100000)
|
||||
--l-- , return $ tToBTree "cor" $ return $ cleatOnward corridor
|
||||
--l-- --, tToBTree "sdr" . return . cleatOnward <$> slowDoorRoom
|
||||
--l---- , tToBTree "sr" . return . cleatOnward <$> tanksRoom [] []
|
||||
--l-- , return $ tToBTree "door" $ return $ cleatOnward door
|
||||
--l-- , return $ tToBTree "cor" $ return $ cleatOnward corridor
|
||||
--l-- , tToBTree "sdr" . return . cleatOnward <$>
|
||||
--l-- (shuffleLinks =<< tanksPipesRoom)
|
||||
--l-- , return $ tToBTree "cor" $ return $ cleatOnward corridor
|
||||
--l-- , return $ tToBTree "cor" $ return $ cleatOnward corridor
|
||||
--l-- , return $ tToBTree "cor" $ return $ cleatOnward corridor
|
||||
--l , return $ tToBTree "cor" $ return $ cleatOnward corridor
|
||||
--l , return $ tToBTree "cor" $ return $ cleatOnward corridor
|
||||
--l , return $ tToBTree "cor" $ return $ cleatOnward corridor
|
||||
--l , return $ tToBTree "door" $ return $ cleatOnward door
|
||||
--l , tutHub
|
||||
--l , chasmSpitTerminal
|
||||
--l , tutLight
|
||||
--l , tutDrop
|
||||
--l , return $ tToBTree "cor" $ return $ cleatOnward corridor
|
||||
---- , AnTree $ pickupTut
|
||||
---- , AnTree $ weaponTut
|
||||
]
|
||||
|
||||
@@ -30,7 +30,8 @@ postWorldLoad rdata cw = do
|
||||
glNamedBufferStorage newfloorbo (fromIntegral $ 8 * nfloorvxs * floatSize) floorptr 0
|
||||
nchasmvxs <- foldM (pokeChasm chptr) 0 (cw ^. uvWorld . cWorld . chasms)
|
||||
glBindBufferBase GL_SHADER_STORAGE_BUFFER 7 newchbo
|
||||
glNamedBufferStorage newchbo (fromIntegral $ 2 * nchasmvxs * floatSize) chptr 0
|
||||
glNamedBufferStorage newchbo (fromIntegral $ 2 * (max 1 nchasmvxs) * floatSize) chptr 0
|
||||
-- note the max 1, prevents trying to create empty buffer storage
|
||||
checkGLError "during postWorldLoad"
|
||||
return $
|
||||
cw & uvWorld . cWorld . numberFloorVerxs .~ nfloorvxs
|
||||
|
||||
Reference in New Issue
Block a user