Перейти к содержимому

Лидеры


Популярный контент

Показан контент с высокой репутацией 17.09.2022 во всех областях

  1. 2 балла
    Я нашел метод подмены ID. Пишу одну либу, под свои нужды так сказать. Я просто задумался о самом простом и минимально затратном способе подмены ID и родил это: _G.backup = {} _G.backup.os = {} _G.backup.os.getComputerID = _G.os.getComputerID -- spoof computer id -- self.spoof_computer_id = function(id) if id then _G.os.getComputerID = function() return id end end sleep(1) end self.restore_computer_id = function() _G.os.getComputerID = _G.backup.os.getComputerID end
  2. 1 балл
    Потратив более 8 часов беспрерывного кода. Я написал дизеринг для своей либы. К сожалению этот метод ОЧЕНЬ долгий. Я напишу другой метод, в итоге будет два метода, в теории второй метод должен быть быстрее. До: После(используется несколько значений факторов)
  3. 1 балл
    Вот и второй алгоритм: Куда быстрее предыдущего, но имеет только черно-белые цвета -- ordered bayer dither -- local threshold_map = { {0, 8, 2, 10}, {12, 4, 14, 6}, {3, 11, 1, 9}, {15, 7, 13, 5} } function Dither.ordered_bayer_dither(matrix, bool_matrix, width, height) for y=1, height-1 do for x=2, width-1 do local grey = Dither.greyscale_pixel(colors.toRGB(matrix[y][x])) grey = grey / Dither.MAX_COLOR -- Dither.MAX_COLOR is 255 if grey < threshold_map[(y%4)+1][(x%4)+1] * (1/16) then matrix[y][x] = colors.black bool_matrix[CEIL(y/3)][CEIL(x/2)] = true else matrix[y][x] = colors.white bool_matrix[CEIL(y/3)][CEIL(x/2)] = true end end end return matrix, bool_matrix end
  4. 1 балл
    Код: -- floyd steinberg dither -- function Dither.floyd_steinberg_dither(matrix, bool_matrix, width, height) for y=1, height-1 do for x=2, width-1 do local old_r,old_g,old_b = colors.toRGB(matrix[y][x]) --old_r,old_g,old_b = Dither.greyscale_pixel(old_r,old_g,old_b) local factor = 3 local new_r = CEIL(factor * old_r / 255) * (255 / factor) local new_g = CEIL(factor * old_g / 255) * (255 / factor) local new_b = CEIL(factor * old_b / 255) * (255 / factor) new_r,new_g,new_b = math.floor(new_r), math.floor(new_g), math.floor(new_b) matrix[y][x] = colors.fromRGB(new_r,new_g,new_b) bool_matrix[CEIL(y/3)][CEIL(x/2)] = true local err_r = old_r - new_r local err_g = old_g - new_g local err_b = old_b - new_b local index_x, index_y = x+1, y local c_r, c_g, c_b = colors.toRGB(matrix[index_y][index_x]) c_r = c_r + err_r * 7/16.0 c_g = c_g + err_g * 7/16.0 c_b = c_b + err_b * 7/16.0 matrix[index_y][index_x] = colors.fromRGB(c_r, c_g, c_b) bool_matrix[CEIL(index_y/3)][CEIL(index_x/2)] = true index_x, index_y = x-1, y+1 c_r, c_g, c_b = colors.toRGB(matrix[index_y][index_x]) c_r = c_r + err_r * 3/16.0 c_g = c_g + err_g * 3/16.0 c_b = c_b + err_b * 3/16.0 matrix[index_y][index_x] = colors.fromRGB(c_r, c_g, c_b) bool_matrix[CEIL(index_y/3)][CEIL(index_x/2)] = true index_x, index_y = x, y+1 c_r, c_g, c_b = colors.toRGB(matrix[index_y][index_x]) c_r = c_r + err_r * 5/16.0 c_g = c_g + err_g * 5/16.0 c_b = c_b + err_b * 5/16.0 matrix[index_y][index_x] = colors.fromRGB(c_r, c_g, c_b) bool_matrix[CEIL(index_y/3)][CEIL(index_x/2)] = true index_x, index_y = x+1, y+1 c_r, c_g, c_b = colors.toRGB(matrix[index_y][index_x]) c_r = c_r + err_r * 1/16.0 c_g = c_g + err_g * 1/16.0 c_b = c_b + err_b * 1/16.0 matrix[index_y][index_x] = colors.fromRGB(c_r, c_g, c_b) bool_matrix[CEIL(index_y/3)][CEIL(index_x/2)] = true --[[ [y+1][x ] [y+1][x+1] ]] end end return matrix, bool_matrix end colors взял отсюда: https://www.computercraft.info/forums2/index.php?/topic/23048-rgb-api-convert-rgb-colors-to-computercraft-colors-and-back/
Эта таблица лидеров рассчитана в Москва/GMT+03:00
×
×
  • Создать...